home *** CD-ROM | disk | FTP | other *** search
/ Shareware Super Platinum 8 / Shareware Super Platinum 8.iso / mac / PROGTOOL / DOCZ16.ZIP;1 / DOCZ.LIF / DOCZ16.DOC < prev    next >
Encoding:
Text File  |  1994-03-02  |  263.6 KB  |  8,977 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                                       DOCZ(tm)
  21.  
  22.  
  23.                        An Automated Code Documentation System
  24.  
  25.                                      Version 1.6
  26.  
  27.  
  28.                                      User Manual
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.                                 Software Toolz, Inc.
  44.                                8030 Pooles Mill Drive
  45.                              Ball Ground, Georgia 30107
  46.                                    (404) 889-8264
  47.                                  FAX (404) 887-5960
  48.                          Internet: software@toolz.atl.ga.us
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.                  Special contributions and inspiration provided by:
  56.  
  57.                                     Roger D. Wood
  58.                                Loren L. Brumbaugh, Jr.
  59.                                       Chip Owen
  60.                                     Karl Klingman
  61.  
  62.  
  63.             The text permutation algorithm was developed and contributed
  64.                                to the DOCZ System by:
  65.  
  66.                                   Paul D. Anderson
  67.  
  68.  
  69.                     The DOCZ System was designed and written by:
  70.  
  71.                                     Todd Merriman
  72.  
  73.  
  74.                                      Trademarks:
  75.  
  76.                      DOCZ is a trademark of Software Toolz, Inc.
  77.                      MSDOS and XENIX are trademarks of Microsoft
  78.             IBM-PC, RS6000 and PCDOS are trademarks of The International
  79.                             Business Machines Corporation
  80.                 DEC, DEC/CMS, VAX, and VMS are trademarks of Digital
  81.                                 Equipment Corporation
  82.                       8086 is a trademark of Intel Corporation
  83.                              UNIX is a trademark of AT&T
  84.                        BRIEF is a trademark of UnderWare, Inc
  85.                    CTIX is a trademark of Convergent Technologies
  86.                    AViiON and DG/UX are trademarks of Data General
  87.                   SUN and SPARC are trademarks of Sun Microsystems
  88.                          Dbase is a trademark of Ashton-Tate
  89.                      SCO is a trademark of Santa Cruz Operation
  90.  
  91.  
  92.                       The installation program used to install
  93.                       the MSDOS  version of  the DOCZ  System,
  94.                       INSTALL, is  licensed software  provided
  95.                       by   Knowledge   Dynamics   Corporation,
  96.                       Highway Contract  4  Box  185-H,  Canyon
  97.                       Lake, Texas 78133-3508 (USA), 1-512-964-
  98.                       3994.  INSTALL is Copyright 1987-1989 by
  99.                       Knowledge  Dynamics  Corporation   which
  100.                       reserves all copyright protection world-
  101.                       wide.  INSTALL  is provided  to you  for
  102.                       the exclusive purpose of installing  the
  103.                       MSDOS version of the DOCZ System.
  104.  
  105.  
  106.                              User Manual Revision 33275
  107.                             DOCZ Version 1.6 User Manual
  108.  
  109.  
  110.  
  111.                                           2
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.                                        NOTICE
  119.  
  120.             Be informed that this manual and the associated computer
  121.             programs are protected by Public Laws 94-553 and 96-517 of
  122.             the 94th and 96th Congress.
  123.  
  124.             Any person who infringes a copyright for commercial
  125.             advantage or financial gain will be subject to federal
  126.             criminal prosecution.
  127.  
  128.  
  129.                                      DISCLAIMER
  130.  
  131.             This software is licensed (not sold).  It is licensed to
  132.             sublicensees, including end-users without express or implied
  133.             warranties of any kind.  Software Toolz, Inc. makes no
  134.             warranties with respect to this manual, or with respect to
  135.             the software described in this manual, its quality,
  136.             performance, merchantability, or fitness for any particular
  137.             purpose or noninfringement of patents, copyrights or other
  138.             proprietary rights of others.  Software Toolz software is
  139.             sold as is.  The entire risk as to its quality and
  140.             performance is with the buyer (and not Software Toolz, Inc.,
  141.             its distributor, or its retailer), and the buyer assumes the
  142.             entire cost of all necessary servicing, repair, or
  143.             correction and any incidental or consequential damages.  In
  144.             no event will Software Toolz, Inc. be liable for direct,
  145.             indirect, incidental, or consequential damages resulting
  146.             from any defect in the software, even if Software Toolz has
  147.             been advised of the possibility of such damages.  Some
  148.             states do not allow the exclusion or limitation of implied
  149.             warranties or liability for incidental or consequential
  150.             damages, so the above limitation or exclusion may not apply
  151.             to you.
  152.  
  153.             Further, Software Toolz, Inc. reserves the right to revise
  154.             this publication without obligation to notify any person of
  155.             such revisions.  Information in this publication does not
  156.             represent a commitment on the part of Software Toolz, Inc..
  157.  
  158.             Copyright 1986, Thomas C. (Todd) Merriman, d/b/a Future
  159.             Communications, Atlanta, Georgia
  160.             Copyright 1990, Software Toolz, Inc., Atlanta, Georgia
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.                                           3
  175.  
  176.  
  177.  
  178.  
  179.                                       CONTENTS
  180.  
  181.  
  182.                  Building a New DOCZ Documentation Library ...........9
  183.  
  184.             CONCEPTS .................................................11
  185.                  What is DOCZ? .......................................11
  186.                  What does DOCZ Do? ..................................12
  187.                  Major Functions .....................................12
  188.                  What is a Library? ..................................14
  189.                  What is a Module? ...................................14
  190.                  Directories .........................................15
  191.                  The DOCZ Programs ...................................17
  192.                  Command Line Arguments ..............................19
  193.                  Conventions Used in this Document ...................20
  194.                  Program Operation Conventions .......................21
  195.                  File Formats ........................................21
  196.                  Miscellaneous Conventions ...........................23
  197.                  Date Format .........................................23
  198.                  Naming Conventions ..................................25
  199.                  Architecture ........................................25
  200.  
  201.             FORMATTING SOURCE CODE ...................................27
  202.                  The Documentation Header ............................27
  203.                  The Parameters for Documentation Headers ............29
  204.                  Parameter Summary ...................................34
  205.                  Building Documentation Libraries ....................37
  206.                  Full Library Documentation ..........................41
  207.                  Printing ............................................42
  208.                  The Library Introduction ............................42
  209.                  Revision/Fix Notices ................................43
  210.                  Change Notices ......................................45
  211.                  Library Summary .....................................45
  212.                  Single Module Documentation .........................47
  213.                  The Configuration File ..............................49
  214.                  The Printer Interface ...............................49
  215.                  Multiple Language Support ...........................53
  216.                  Specifying a Comment String Mask ....................53
  217.                  Specifying Comment String Masks for File
  218.                  Extensions ..........................................54
  219.                  Transaction Logging .................................55
  220.                  Alternate Directories and Version Control ...........57
  221.                  MSDOS Username ......................................59
  222.                  Variable TAB Expansion ..............................59
  223.                  Specifying Command Line Options .....................60
  224.                  Option Summary ......................................61
  225.                  Dumping the Documentation Index .....................63
  226.                  Displaying Modules Modified Since a Date ............63
  227.                  Displaying Modules Introduced Since a Date ..........63
  228.                  Deleting a Module ...................................64
  229.                  Searching for a Module ..............................64
  230.                  Feeding the Documentation Index to Other Programs ...64
  231.                  Reorganizing Documentation Index Files ..............65
  232.                  DOC .................................................67
  233.                       DOC Examples ...................................68
  234.                  DOCXL ...............................................69
  235.                       DOCXL Examples .................................71
  236.  
  237.  
  238.                                           5
  239.  
  240.  
  241.  
  242.                                       CONTENTS
  243.  
  244.  
  245.                  DOCXLU ..............................................72
  246.                       DOCXLU Examples ................................76
  247.                  DOCHBLD .............................................77
  248.                  DOCHELP .............................................79
  249.                  DOCXLED .............................................81
  250.                  DOCGET ..............................................85
  251.                  DOCLIS ..............................................86
  252.                  DOCLOG ..............................................88
  253.                  DOCMAN ..............................................90
  254.                  DOCLEARN ............................................91
  255.                  PSET ................................................93
  256.                  PCODE ...............................................97
  257.                  CALCDATE ............................................99
  258.                  REFORMAT ............................................100
  259.                  FILLS ...............................................102
  260.                  DETAB ...............................................103
  261.                  RETAB ...............................................104
  262.  
  263.             ERROR MESSAGES ...........................................105
  264.                  Directory Layout ....................................117
  265.                  Cross-Platform Development ..........................118
  266.                  Using DOCZ WIthout Source Code ......................122
  267.                  Building a Documentation Library ....................127
  268.                  strmcpy.c - C Language ..............................128
  269.                  strmcpy.asm - 8086 Assembly .........................128
  270.                  strmcpy.mar - VAX11 Assembly ........................128
  271.                  move.bat - MSDOS Batch File .........................128
  272.                  fake.bas - BASIC Function ...........................128
  273.                  upcase.for - FORTRAN Function .......................128
  274.                  cmdline.pas - Pascal Function .......................128
  275.                  mailfile.com - DCL Command File .....................128
  276.                  cp_r.sh - Bourne Shell Script .......................128
  277.                  macro.h - C Language Macro ..........................128
  278.                  gtsa.prg - Dbase Language ...........................128
  279.                  frank.prl - Perl Language ...........................129
  280.                  DOCREVS.COM - DOCZ Automation .......................129
  281.                  docrevs.sh - DOCZ Automation ........................129
  282.                  DOCSTASH.COM - DOCZ Automation ......................129
  283.                  docstash - DOCZ Automation ..........................129
  284.                  A Sample DOCZ Library ...............................130
  285.                  Documentation Index Record Format ...................131
  286.                  Development Language ................................131
  287.                  Version Control Software Interface ..................132
  288.                  Standard Error ......................................132
  289.                  8.5 x 11 Documentation Size .........................132
  290.                  Case in Module and Library Names ....................132
  291.                  Some Implementation Requirements ....................133
  292.                  Basic Installation ..................................141
  293.                  Re-installation/Update ..............................141
  294.                  Enabling Extended DOCZ Features .....................142
  295.                       Examples and Support Files .....................143
  296.                  MSDOS VERSION .......................................144
  297.                       MSDOS Version Minimum Requirements .............144
  298.                       Getting Started with the MSDOS Version .........144
  299.  
  300.  
  301.                                           6
  302.  
  303.  
  304.  
  305.                                       CONTENTS
  306.  
  307.  
  308.                       MSDOS Version Installation Procedure ...........144
  309.                       Files in a Working DOCZ System .................145
  310.                  VMS VERSION .........................................147
  311.                       VMS Version Minimum Requirements ...............147
  312.                       Getting Started with the VMS Version ...........147
  313.                       VMS Version Installation Procedure .............147
  314.                       Files in a Working DOCZ System .................149
  315.                  UNIX VERSION ........................................151
  316.                       UNIX Version Minimum Requirements ..............151
  317.                       Getting Started with the UNIX Version ..........151
  318.                       UNIX Version Installation Procedure ............151
  319.                       Files in a Working DOCZ System .................153
  320.  
  321.                   ................................
  322.             INDEX                                 ....................155
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.                                           7
  366.  
  367.  
  368.  
  369.  
  370.                               Getting Started Quickly!
  371.  
  372.  
  373.             Building a New DOCZ Documentation Library
  374.  
  375.  
  376.             (1)  The installation procedure will have created a command
  377.                  file in the DOCREF directory called:
  378.  
  379.                       Unix:          $DOCREF/docz_sym
  380.  
  381.                       MSDOS:    %DOCREF%/DOCZ_SYM.BAT
  382.  
  383.                       VMS:      SYS$MANAGER:DOCZ_LOGIN.COM
  384.  
  385.                  This command file will create the required DOCSRC and
  386.                  DOCREF environment symbols for use by DOCZ.  If you
  387.                  have not already, run this command file so that DOCZ
  388.                  programs will be able to find the files in the DOCSRC
  389.                  and DOCREF directories (the Unix command file should be
  390.                  dot executed).  The MSDOS installation procedure
  391.                  optionally modifies AUTOEXEC.BAT to define the required
  392.                  symbols.
  393.  
  394.                  Select a name for your library.  The name may have, but
  395.             (2)
  396.                  does not need to have a physical relationship to any
  397.                  object library or group of programs.  The name should
  398.                  be up to 11 characters in length, and should contain no
  399.                  punctuation.
  400.  
  401.                  Create a sub-directory to the DOCSRC directory (DOCSRC
  402.             (3)
  403.                  was created during installation), with a name the same
  404.                  as the name you have chosen for your library (upper
  405.                  case in Unix).
  406.  
  407.             (4)  Select the modules to be contained in the documentation
  408.                  library.  Modules are either subroutine names (when
  409.                  documenting object libraries) or program names (when
  410.                  documenting program or command file libraries).  They
  411.                  may also be object names when using an object-oriented
  412.                  language.
  413.  
  414.                  Edit the Documentation Header in your source code for
  415.             (5)
  416.                  each module you want to document.  Each source file may
  417.                  contain one or many modules, and there will be one DOCZ
  418.                  Documentation Header for each module in a source file.
  419.  
  420.             (6)  Move the source files to your new DOCSRC subdirectory.
  421.  
  422.             (7)  Run DOCXL or DOCLIS to add the module to the
  423.                  Documentation Index (see the DOCXL or DOCLIS program
  424.                  reference).  DOCLIS will "mass-load" the documentation
  425.                  library with one invocation.  DOCXL will add each
  426.                  module one at a time.
  427.  
  428.                  Run DOC on the library to test the documentation (see
  429.             (8)
  430.                  the DOC program reference).
  431.  
  432.  
  433.                                           9
  434.  
  435.  
  436.  
  437.                               Getting Started Quickly!
  438.  
  439.  
  440.  
  441.             (9)  Run DOCHBLD to build an on-line help library (see the
  442.                  DOCHBLD program reference).
  443.  
  444.             (10) Use the manual section, "SELECTING OPTIONS" to enhance
  445.                  and modify your DOCZ environment.  If you are adapting
  446.                  DOCZ to a pre-existing development environment, this
  447.                  manual section will show you how to override the
  448.                  installation defaults used by DOCZ and set up an
  449.                  environment more suitable to your current environment.
  450.                  For instance, your source code does not necessarily
  451.                  have to be stored in a sub-directory with a name the
  452.                  same as the documentation library name.
  453.  
  454.                  Use the manual section, "PUBLISHING DOCUMENTATION" to
  455.             (11)
  456.                  learn how to automate Revision Notices and publish
  457.                  other types of DOCZ reports.
  458.  
  459.             The source files for many examples in various languages were
  460.             deposited in the DOCSRC directory by the installation
  461.             procedure.  In addition, the sample documentation library
  462.             called CSUB may have been built from sample sources at DOCZ
  463.             installation time, if that option was selected by the
  464.             installer.  The bldocz command file has been provided in the
  465.             DOCSRC directory to demonstrate how CSUB was built.
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.                                          10
  498.  
  499.  
  500.  
  501.                                       CONCEPTS
  502.  
  503.  
  504.             What is DOCZ?
  505.  
  506.             Have you ever wished that you could fully document
  507.             subroutine libraries and programs such that they could be
  508.             used by everyone in your software development environment?
  509.             DOCZ is a software tool that automates that kind of code
  510.             documentation.
  511.  
  512.             Software developers know that a high degree of efficiency is
  513.             required in today's software market to compete, and one
  514.             means of achieving high efficiency is by reusing code.  The
  515.             DOCZ System provides the means to document code to make it
  516.             easy to reuse by many in a development environment.
  517.  
  518.             The concept is simple:  the code documentation is contained
  519.             in the source code itself.  The documentation is completed
  520.             by the software developer whenever a new module is
  521.             introduced.
  522.  
  523.             A good development environment is one that facilitates the
  524.             sharing of resources between software developers.  The DOCZ
  525.             System automates the entire process of managing the
  526.             documentation for shareable code.
  527.  
  528.             DOCZ consists of a group programs that extracts code
  529.             documentation from the source code and composes it into
  530.             print image.
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.                                          11
  561.  
  562.  
  563.  
  564.                                       CONCEPTS
  565.  
  566.  
  567.             What does DOCZ Do?
  568.  
  569.                  S    Allows documentation and source code to be
  570.                       contained in a single file
  571.  
  572.                  S    Supplies the mechanism for providing documentation
  573.                       of code to be used by other software developers
  574.  
  575.                  S    Works with 'C', Assembly, Pascal, COBOL, FORTRAN,
  576.                       BASIC and command-language-interpreter languages.
  577.                       Theoretically, DOCZ may be used with any language
  578.                       for which the source is stored in text
  579.  
  580.                  S    Allows a complete documentation set to be produced
  581.                       immediately on demand, and the documentation
  582.                       includes an index and quick-reference, as well as
  583.                       detailed module documentation
  584.  
  585.                  S    Uses printer features to enhance output format of
  586.                       the documentation
  587.  
  588.                  S    Makes the sharing of resources in large
  589.                       development groups much easier
  590.  
  591.                  S    Takes the drudgery out of code documentation and
  592.                       makes it easy for the programmer to produce
  593.                       polished documentation
  594.  
  595.                  S    Simplifies the publishing of revision, change,
  596.                       introduction and fix notices
  597.  
  598.                  S    Provides on-line documentation for library modules
  599.                       and prototypes for selected editors
  600.  
  601.                  S    Automatically retrieves source files via source
  602.                       code version control systems (SCCS under UNIX, and
  603.                           under VMS)
  604.                       CMS
  605.  
  606.                  S    Provides for a cross-platform development
  607.                       environment and identical functionality with Unix
  608.                       System V, VMS, and MSDOS (including PC-networks)
  609.  
  610.  
  611.             Major Functions
  612.  
  613.                  S    Adding or updating a module
  614.  
  615.                  S    Producing the library documentation
  616.  
  617.                  S    Producing revision or fix notices
  618.  
  619.                  S    Producing documentation for recently changed
  620.  
  621.                       modules
  622.  
  623.  
  624.                                          12
  625.  
  626.  
  627.  
  628.                                       CONCEPTS
  629.  
  630.  
  631.  
  632.                  S    Maintaining the Documentation Index
  633.  
  634.                  S    Building and using on-line help libraries
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.                                          13
  688.  
  689.  
  690.  
  691.                                       CONCEPTS
  692.  
  693.  
  694.             What is a Library?
  695.  
  696.  
  697.             A DOCZ "library" is a name.  The name may have, but does not
  698.             need to have a physical relationship to any object library
  699.             or group of programs.  It designates a logical "group" of
  700.             modules.  You may have one or many Documentation Libraries.
  701.  
  702.             The name may be up to 11 characters in length, and should
  703.             contain no punctuation.
  704.  
  705.  
  706.  
  707.             What is a Module?
  708.  
  709.  
  710.             A DOCZ "module" is a name.  Modules are either subroutine
  711.             names (when documenting object libraries) or program names
  712.             (when documenting program or command file libraries).  They
  713.             may also be object names when using an object-oriented
  714.             language.
  715.  
  716.             The name may be up to 31 characters in length, and naming
  717.             should follow standard file and/or object module entry point
  718.             naming conventions.
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.  
  734.  
  735.  
  736.  
  737.  
  738.  
  739.  
  740.  
  741.  
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.                                          14
  751.  
  752.  
  753.  
  754.                                       CONCEPTS
  755.  
  756.  
  757.             Directories
  758.  
  759.             DOCZ documentation may refer to five directories on your
  760.             system:
  761.  
  762.                  (1)  The Default Source Directory - DOCSRC
  763.  
  764.                       Although source may be stored in any device or
  765.                       directory, the simplest approach is to use the
  766.                       default source directory (also known as the
  767.                       Documentation Source Directory).  When no
  768.                       directory or device is specified in the
  769.                       Documentation Index, the DOC program will search
  770.                       for files in a subdirectory of the default source
  771.                       directory.  In a large DOCZ installation, there
  772.                       could be many of these sub-directories.
  773.  
  774.                  (2)  The Documentation Reference Directory - DOCREF
  775.  
  776.                       This directory is where DOCZ programs will search
  777.                       for the Documentation Index File, library
  778.                       documentation "introductions," and other DOCZ
  779.                       system reference files.  See the installation
  780.                       documentation for more information.
  781.  
  782.                  (3)  The Documentation Data Directory - DOCDAT (VMS)
  783.  
  784.                       This directory is used for certain reference data
  785.                       files used in DOCZ.  In the MSDOS and UNIX
  786.                       versions, the "PATH" is searched for these files;
  787.                       consequently the Documentation Data Directory may
  788.                       be several physical directories.  In the VMS
  789.                       version a directory must be set aside where these
  790.                       files can be located when any of the DOCZ programs
  791.                       run.  There is only one of these directories on
  792.                       any VMS system, and it is pointed to by the DOCDAT
  793.                       logical name.
  794.  
  795.                  (4)  The Program Directory
  796.  
  797.                       The directory where DOCZ executable images reside
  798.                       when you are using DOCZ.  In the MSDOS and UNIX
  799.                       versions, the "PATH" is searched for these files.
  800.                       In the VMS version, the DOCZ programs are defined
  801.                       as DCL foreign commands, and their symbols point
  802.                       to the location of the executable image.
  803.  
  804.                  (5)  The Working Directory
  805.  
  806.                       The default directory when you run any of DOCZ
  807.                       programs.
  808.  
  809.  
  810.  
  811.  
  812.  
  813.                                          15
  814.  
  815.  
  816.  
  817.                                       CONCEPTS
  818.  
  819.  
  820.             Ideally, these five logical directories do not exist as the
  821.             same single physical directory, although this is not
  822.             generally prohibited by the DOCZ System (see INSTALLATION
  823.             for more information).
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.                                          16
  877.  
  878.  
  879.  
  880.                                       CONCEPTS
  881.  
  882.  
  883.             The DOCZ Programs
  884.  
  885.  
  886.                  DOC       Generate module documentation
  887.  
  888.                  DOCXL     Add/update the Documentation Index
  889.  
  890.                  DOCXLU    Search and manage the Documentation Index
  891.  
  892.                  DOCHBLD   Generate an on-line library documentation
  893.  
  894.                  help file
  895.  
  896.                  DOCHELP   Scan/display on-line help documentation
  897.  
  898.                  DOCXLED   Examine/search/modify the Documentation Index
  899.  
  900.                  File
  901.  
  902.                  DOCGET    Extract a field from a documentation header
  903.  
  904.                  DOCLIS    Find all DOCZ modules in a source file
  905.  
  906.                  DOCLOG    Examine/search the log file
  907.  
  908.                  DOCMAN    On-line DOCZ User Manual
  909.  
  910.                  DOCLEARN  On-line DOCZ tutorial
  911.  
  912.  
  913.  
  914.  
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.                                          17
  940.  
  941.  
  942.  
  943.  
  944.                                      CONVENTIONS
  945.  
  946.  
  947.             Command Line Arguments
  948.  
  949.                  S    Whenever you see the angle bracket symbols (< and
  950.                       >) in a command line specification, they denote a
  951.                       required argument.
  952.  
  953.                  S    Whenever you see the square bracket symbols ([ and
  954.                       ]) in a command line specification, they denote an
  955.                       optional argument.
  956.  
  957.                  S    Command line prompts (d> for MSDOS and $ for VMS
  958.                       and UNIX) are not displayed in this documentation.
  959.                       Only the command line arguments typed by the user
  960.                       are displayed, to avoid confusion.
  961.  
  962.                  S    Generally, in all DOCZ programs, if no command
  963.                       line arguments are specified when the program is
  964.                       run, then a list of possible command line
  965.                       arguments is displayed as a reminder to the user.
  966.  
  967.                  S    The "switch character," the character recognized
  968.                       as a delimiter for command line options, is (by
  969.                       default) the slash ('/') character in MSDOS and
  970.                       VMS versions, and is the dash ('-') character in
  971.                       the UNIX version.  This is consistent with the
  972.                       respective operating system conventions, but may
  973.                       be changed to any other character (such as '+') by
  974.                       defining the SWITCHAR symbol in the UNIX and MSDOS
  975.                       versions or the SWITCHAR logical name in the VMS
  976.                       version.  This document will display command-line
  977.                       options with the '/' delimiter.  Modifiers for
  978.                       command options are usually separated from the
  979.                       option specifier with an equals (=) sign.
  980.  
  981.                  S    Some DOCZ programs accept "ambiguous file names"
  982.                       (DOCLIS, for example).  If a file specification is
  983.                       illustrated as "a.f.n.," the specification may be
  984.                       an "ambiguous file name."  This means that the
  985.                       file specification may contain wildcard characters
  986.                       for multiple matches to file names.  Wildcarding
  987.                       in DOCZ programs will conform to the operating
  988.                       system conventions ('%' and '*' in VMS, '?' and
  989.                       '*' in UNIX and MSDOS).  DOCZ wildcards also
  990.                       provide the additional capability of specifying
  991.                       multiple paths in the ambiguous file name, as long
  992.                       as all specifications are contained in quotes so
  993.                       that they may be presented as a single argument to
  994.                       DOCZ programs.  For example:
  995.  
  996.                            "\DOCSRC\ULIB\*.pas \DOCSRC\UTIL\*.c"
  997.  
  998.  
  999.  
  1000.  
  1001.  
  1002.  
  1003.                                          19
  1004.  
  1005.  
  1006.  
  1007.                                      CONVENTIONS
  1008.  
  1009.  
  1010.             Conventions Used in this Document
  1011.  
  1012.                  S    Program names are always illustrated in upper case
  1013.                       but, in the UNIX version, are named in lower case.
  1014.  
  1015.                  S    Batch files (MSDOS), shell scripts (UNIX), and
  1016.                       command files (VMS) are all referred to as
  1017.                       "command files."
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.                                          20
  1067.  
  1068.  
  1069.  
  1070.                                      CONVENTIONS
  1071.  
  1072.  
  1073.             Program Operation Conventions
  1074.  
  1075.                  S    In UNIX DOCZ, program names are always in lower ,
  1076.                       while data and reference files are always in upper
  1077.                       case.
  1078.  
  1079.                  S    All Software Toolz programs display a minor
  1080.                       revision number that will be greater than 31000.
  1081.                       This number is a Julian equivalent of the date on
  1082.                       which the program was created.  This is provided
  1083.                       to determine exactly which version of a program is
  1084.                       being run.  The actual date on the file in the
  1085.                       directory is meaningless.
  1086.  
  1087.                  S    DOCZ programs are not generally interactive, i.e.
  1088.                       there is no prompt/response type operations.  This
  1089.                       convention is adopted to allow the user to more
  1090.                       fully automate their documentation through the use
  1091.                       of command files that can pass arguments to DOCZ
  1092.                       programs.
  1093.  
  1094.                  S    DOCZ programs may return a value to the command-
  1095.                       language interpreter that may be  significant.
  1096.                       For those DOCZ programs that do return a value,
  1097.                       the actual value is operating system dependent:
  1098.  
  1099.                  REFERENCE NAME      UNIX/MSDOS VALUE         VMS VALUE
  1100.  
  1101.                  EXITNORMAL               0                   1
  1102.                  EXITWARN                 1                   3
  1103.                  EXITBAD                  255                 4
  1104.  
  1105.             For example:  the DOCZ documentation specifies that the DOC
  1106.             program returns EXITBAD if it cannot open the Documentation
  1107.             Index File.  For VMS, this means that $STATUS will be set to
  1108.             the value, 4.  For MSDOS, this means that ERRORLEVEL will be
  1109.             set to 255.  For UNIX, this means that $? will be set to
  1110.             255.  This will allow you to include references to DOCZ
  1111.             programs in command files, and command file program flow can
  1112.             be determined by the results of programs.
  1113.  
  1114.  
  1115.  
  1116.             File Formats
  1117.  
  1118.  
  1119.             A commonly used file format in DOCZ is the text data format.
  1120.             It is a text file format containing variable length records
  1121.             composed of variable length fields delimited with a comma.
  1122.             Records are delimited with an End-of-Line (which varies
  1123.             between operating systems).  Fields that require the
  1124.             embedding of commas may be surrounded by either the double
  1125.             quote character or the apostrophe.  If the double-quote must
  1126.             be embedded in the field, the apostrophe is used to surround
  1127.  
  1128.  
  1129.                                          21
  1130.  
  1131.  
  1132.  
  1133.                                      CONVENTIONS
  1134.  
  1135.  
  1136.             the field.  If the apostrophe must be embedded in the field,
  1137.             the double-quote is used to surround the field.  This file
  1138.             format has the advantages that it can be edited with a text
  1139.             editor, though it is not "print image."  Record size is
  1140.             generally never fixed, and records are only as large as
  1141.             required.  Most operating system sort utilities are made to
  1142.             operate on this type of file.  The DOCXL program outputs
  1143.             this format for one of the reports it produces; ASCII
  1144.             Transport Files use this file format.
  1145.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.                                          22
  1193.  
  1194.  
  1195.  
  1196.                                      CONVENTIONS
  1197.  
  1198.  
  1199.             Miscellaneous Conventions
  1200.  
  1201.             Control keys are sometimes utilized in interactive DOCZ
  1202.             programs.  Whenever a prompt or legend is displayed for
  1203.             control keys the carat character will precede the key to
  1204.             denote that it is to be entered as a control character.  For
  1205.             example:
  1206.  
  1207.                  ^C
  1208.  
  1209.             actually represents a control-C.  The carat character is not
  1210.             used for input in any DOCZ program.
  1211.  
  1212.             The "Press" prompt denotes that only a single keystroke is
  1213.             required for input.  The "Enter" prompt denotes that one or
  1214.             more keystrokes followed by a [RETURN] is required for
  1215.             input.
  1216.  
  1217.  
  1218.  
  1219.             Date Format
  1220.  
  1221.             Dates specified to DOCZ programs have a format that is
  1222.             specified by the user.  The default date format is:
  1223.  
  1224.                  MM/DD/YY
  1225.  
  1226.             which is the most common U.S. format.  Leading zeroes are
  1227.             not required when the date is input but will be supplied
  1228.             when the date is displayed.
  1229.  
  1230.             Other formats for the date may be specified via an
  1231.             environment variable (or logical name in the VMS version),
  1232.             DATEFMT.  If this variable is present when any of the DOCZ
  1233.             programs is run, it will be used to define the format of the
  1234.             date.  The date format is specified using a string
  1235.             containing one or more of the characters, D, M, N, and/or Y,
  1236.             where:
  1237.  
  1238.                  D represents the day number
  1239.  
  1240.                  M represents the month number
  1241.  
  1242.                  N represents the month name
  1243.  
  1244.                  Y represents the year number
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252.  
  1253.  
  1254.  
  1255.                                          23
  1256.  
  1257.  
  1258.  
  1259.                                      CONVENTIONS
  1260.  
  1261.  
  1262.             A date specification always has three fields:  month, day,
  1263.             and year.  The separator character specified in the date
  1264.             format will be used whenever the date is input or displayed:
  1265.             commonly used are '/' or '-', but any non-alphanumeric
  1266.             character may be used.  For D and M, specifying two
  1267.             characters means that leading zeroes will be used.  For Y,
  1268.             specifying YYYY means that the century will be used, as well
  1269.             as the year number; specifying YY means that only the year
  1270.             number will be used.  When NNN is used to specify the month
  1271.             (instead of M or MM), the abbreviation for the month will be
  1272.             used (i.e. "JAN," "FEB," etc.).  Case is ignored in date
  1273.             format specifiers.  For example, the date format specifier
  1274.             may typically have (but is not limited to) the following
  1275.             formats:
  1276.  
  1277.                  D-NNN-YYYY          1-MAY-1987
  1278.                  MM/DD/YY            05/01/87
  1279.                  DD/MM/YY            01/05/87
  1280.                  M/D/Y               1/5/87
  1281.                  MM-DD-YY            05-01-87
  1282.                  D-M-Y               1-5-87
  1283.                  MM/DD/YYYY          05/01/1987
  1284.  
  1285.             When a date is to be specified to a program, the month, day,
  1286.             and year must all be specified.  Many DOCZ programs allow
  1287.             defaulting to the current date (see the documentation for
  1288.             the individual programs).
  1289.  
  1290.             The following examples illustrate the definition of the date
  1291.             format:
  1292.  
  1293.                  VMS
  1294.  
  1295.                       $  DEFINE/PROCESS DATEFMT D-NNN-YYYY
  1296.  
  1297.                  MSDOS
  1298.  
  1299.                       SET DATEFMT=D-NNN-YYYY
  1300.  
  1301.                  UNIX
  1302.  
  1303.                       DATEFMT=D-NNN-YYYY
  1304.                       export DATEFMT
  1305.  
  1306.             Note that once the date format is specified on your system,
  1307.             it cannot be easily changed due to the fact that revision
  1308.             and fix dates are imbedded in the source files in the
  1309.             required format.
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.                                          24
  1319.  
  1320.  
  1321.  
  1322.                                      CONVENTIONS
  1323.  
  1324.  
  1325.             Naming Conventions
  1326.  
  1327.                  S    Program and function documentation is grouped in
  1328.                       logical "libraries."  These libraries are named
  1329.                       and may correspond to names of function libraries
  1330.                       on the system.
  1331.  
  1332.                  S    The maximum length of a library name is eleven
  1333.                       characters, and it is mapped to upper case.
  1334.  
  1335.                  S    Module names are restricted to thirty-one
  1336.                       characters, and they are mapped to upper case.
  1337.  
  1338.                  S    The maximum length of a file specification
  1339.                       (including the directory path) is:
  1340.  
  1341.                            MSDOS:    87 characters
  1342.                            VMS:      127 characters
  1343.                            UNIX:     127 characters
  1344.  
  1345.                       Case is preserved in path and file names (although
  1346.                       it is ignored by MSDOS and VMS).
  1347.  
  1348.                  S    Limits are set on name lengths to minimize the
  1349.                       size of the Documentation Index File.
  1350.  
  1351.  
  1352.             Architecture
  1353.  
  1354.  
  1355.             DOCZ maintains a Documentation Index File containing an
  1356.             entry for each module documented with the DOCZ System.  It
  1357.             is a reference file maintained independently from any source
  1358.             code, and it contains the following information for each
  1359.             module in the DOCZ System:
  1360.  
  1361.                  (1)  Library name
  1362.  
  1363.                  (2)  Module name
  1364.  
  1365.                  (3)  Source file name
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.                                          25
  1382.  
  1383.  
  1384.  
  1385.                                      CONVENTIONS
  1386.  
  1387.  
  1388.             The "libraries" may contain programs, command files, or
  1389.             functions (referred to as "modules" in this manual).  The
  1390.             source files may contain a program, a function, or many
  1391.             functions.  Even macros that are usually contained in
  1392.             include files may be documented by DOCZ.  Each module
  1393.             contained in a file must have a documentation header, which
  1394.             contains documentation components, delimited by
  1395.             "parameters," that will be extracted by the DOCZ programs.
  1396.  
  1397.             There is no limit on the number of library names used.
  1398.  
  1399.             There is one record per module in the Documentation Index
  1400.             File, and records may be marked for deletion to be reclaimed
  1401.             on the next add.
  1402.  
  1403.             There may be one or more modules in each source file.
  1404.  
  1405.             The (optional) Configuration File is used by all of the DOCZ
  1406.             programs to select options.  See the section on "SELECTING
  1407.             OPTIONS."
  1408.  
  1409.  
  1410.  
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.  
  1418.  
  1419.  
  1420.  
  1421.  
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.                                          26
  1445.  
  1446.  
  1447.  
  1448.                                FORMATTING SOURCE CODE
  1449.  
  1450.  
  1451.             The Documentation Header
  1452.  
  1453.  
  1454.             The Documentation Header has the general form:
  1455.  
  1456.                  .<parameter>
  1457.  
  1458.                  <arguments>
  1459.  
  1460.             This is a list of currently implemented parameters:
  1461.  
  1462.                  .MODULE
  1463.                  .LIBRARY
  1464.                  .TYPE
  1465.                  .DESCRIPTION
  1466.                  .ARGUMENTS
  1467.                  .NARRATIVE
  1468.                  .APPLICATION
  1469.                  .SYSTEM
  1470.                  .AUTHOR
  1471.                  .REVISION
  1472.                  .FIXES
  1473.                  .CAUTION
  1474.                  .OVERHEAD
  1475.                  .COMMENTS
  1476.                  .RETURNS
  1477.                  .LANGUAGE
  1478.                  .EXAMPLE
  1479.                  .SEE_ALSO
  1480.                  .INCLUDES
  1481.                  .NOTICE
  1482.                  .LSE
  1483.                  .REFERENCES
  1484.                  .CONVENTIONS
  1485.                  .PAGE
  1486.                  .ERRORS
  1487.                  .ENDOC
  1488.  
  1489.             Each of the elements in the documentation header is a
  1490.             parameter that has arguments (although no arguments are
  1491.             shown in the above outline).  DOCZ programs scan this header
  1492.             and extract the arguments associated with the parameters,
  1493.             and reformat the arguments into a usable format.  Some
  1494.             parameters are required, and others are optional.  Some may
  1495.             appear only once, and others may occur many times.  The
  1496.             documentation parameters are unique identifiers delimited
  1497.             with a period in the first column on the page (except when
  1498.             using a "comment string mask" with languages that require
  1499.             such).  Only the first three characters of the parameters
  1500.             are scanned, but you should include the entire word for
  1501.             clarity.
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.                                          27
  1508.  
  1509.  
  1510.  
  1511.                                FORMATTING SOURCE CODE
  1512.  
  1513.  
  1514.             Documentation text may appear on the same line as, or any
  1515.             line following the parameters, except for .MODULE and
  1516.             .LIBRARY names and the .REVISION or .FIXES date:  in these
  1517.             four cases, the arguments must occur on the same line.  Case
  1518.             is ignored in module name, library name, type description,
  1519.             application keyword, and operating system.  For clarity, the
  1520.             text of your arguments to the parameters should be indented
  1521.             as the text will not be reformatted for the documentation.
  1522.             TAB characters may be used for indention, and they will be
  1523.             expanded to eight spaces by the DOCZ programs.  Multiple
  1524.             modules may be contained in one source file, and each will
  1525.             have a documentation heading.  Do not specify a delimiter
  1526.             without an argument (except for .ENDOC).  The only
  1527.             parameters that are position dependent are .MODULE (starts
  1528.             the header) and .ENDOC (ends the header).
  1529.  
  1530.             Any code outside the documentation header is completely
  1531.             ignored by the DOCZ programs.
  1532.  
  1533.             Validation of required fields is done by the DOC program
  1534.             when it is generating output documentation.
  1535.  
  1536.             The Source Code Examples section of this manual displays a
  1537.             few documentation headers for some popular languages.
  1538.  
  1539.             A description of all documentation parameters and their
  1540.             options is described in "The Parameters for Documentation
  1541.             Headers."
  1542.  
  1543.  
  1544.  
  1545.  
  1546.  
  1547.  
  1548.  
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.                                          28
  1571.  
  1572.  
  1573.  
  1574.                                FORMATTING SOURCE CODE
  1575.  
  1576.  
  1577.             The Parameters for Documentation Headers
  1578.  
  1579.  
  1580.             As illustrated in the following descriptions of parameter
  1581.             usage, the parameters are described as:
  1582.  
  1583.             OPTIONAL  parameters do not have to be included in the DOCZ
  1584.                       Header
  1585.             REQUIRED  parameters must be included in the DOCZ Header
  1586.             SINGLE    parameters may occur only once per module in the
  1587.                       DOCZ Header
  1588.             MULTIPLE  parameters may occur as many times as required in
  1589.                       the DOCZ Header (except for some limits as
  1590.                       described in "Formatting Source").
  1591.  
  1592.             PARAMETER:               .MODULE
  1593.             DESCRIPTION:        Module name
  1594.             ARGUMENTS:          One
  1595.             REQUIREMENTS:       REQUIRED, SINGLE
  1596.             TYPICAL ARGUMENTS:
  1597.             NOTES:              Module name and respective arguments
  1598.                                 must appear on the same line.  31
  1599.                                 characters maximum length, case is
  1600.                                 ignored
  1601.  
  1602.             PARAMETER:          .LIBRARY
  1603.             DESCRIPTION:        Library name
  1604.             ARGUMENTS:          One
  1605.             REQUIREMENTS:       REQUIRED, SINGLE
  1606.             TYPICAL ARGUMENTS:
  1607.             NOTES:              Delimiters and respective arguments must
  1608.                                 appear on  the same line.  11 characters
  1609.                                 maximum length.  Case is ignored.
  1610.  
  1611.             PARAMETER:          .TYPE
  1612.             DESCRIPTION:        Type of module
  1613.             ARGUMENTS:          One
  1614.             REQUIREMENTS:       REQUIRED, SINGLE
  1615.             TYPICAL ARGUMENTS:  FUNCTION, PROGRAM, MACRO
  1616.             NOTES:              Case is ignored.
  1617.  
  1618.             PARAMETER:          .DESCRIPTION
  1619.             DESCRIPTION:        Quick summary description
  1620.             ARGUMENTS:          Single line
  1621.             REQUIREMENTS:       REQUIRED, SINGLE
  1622.             TYPICAL ARGUMENTS:
  1623.             NOTES:              Approximately 75 characters maximum
  1624.                                 length, One line only.  It is used in
  1625.                                 the Quick Description Summary produced
  1626.                                 by the DOC program.
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.                                          29
  1634.  
  1635.  
  1636.  
  1637.                                FORMATTING SOURCE CODE
  1638.  
  1639.  
  1640.             PARAMETER:          .ARGUMENTS
  1641.             DESCRIPTION:        Calling parameters
  1642.             ARGUMENTS:          Multi-line
  1643.             REQUIREMENTS:       REQUIRED, SINGLE
  1644.             TYPICAL ARGUMENTS:
  1645.             NOTES:              Calling parameters for functions and
  1646.                                 macros.  Usually just a copy of the
  1647.                                 function call.  Describe the arguments
  1648.                                 as to data type.  It is used in the
  1649.                                 Quick Reference Summary produced by the
  1650.                                 DOC program.
  1651.  
  1652.             PARAMETER:          .NARRATIVE
  1653.             DESCRIPTION:        Long description
  1654.             ARGUMENTS:          Multi-line
  1655.             REQUIREMENTS:       REQUIRED, SINGLE
  1656.             TYPICAL ARGUMENTS:  Complete narrative
  1657.             NOTES:              This area is used to explain the
  1658.                                 functionality of the module and the uses
  1659.                                 of the arguments.
  1660.  
  1661.             PARAMETER:          .APPLICATION
  1662.             DESCRIPTION:        Application keyword
  1663.             ARGUMENTS:          One
  1664.             REQUIREMENTS:         QUIRED, MULTIPLE
  1665.                                 RE
  1666.             TYPICAL ARGUMENTS:  DATE/TIME, CONVERSION, STRING, SCREEN,
  1667.             SYSTEM
  1668.             NOTES:              A word or two to describe the general
  1669.                                 category of the module.  This parameter
  1670.                                 generates the Application Keyword
  1671.                                 Summary.  Maximum occurrences of this
  1672.                                 parameter is 8, case is ignored.  It is
  1673.                                 used in the Application Keyword Summary
  1674.                                 produced by the DOC program.
  1675.  
  1676.             PARAMETER:          .SYSTEM
  1677.             DESCRIPTION:        Operating system, Version, Compiler
  1678.             ARGUMENTS:          One
  1679.             REQUIREMENTS:       REQUIRED, MULTIPLE
  1680.             TYPICAL ARGUMENTS:  MSDOS, VMS, UNIX System V
  1681.             NOTES:              A word or two to describe the supported
  1682.                                 platform(s).  This parameter generates
  1683.                                 the Platform Summary.  Maximum
  1684.                                 occurrences of this parameter is 8, case
  1685.                                 is ignored.  It is used in the Platform
  1686.                                 Summary produced by the DOC program.
  1687.  
  1688.             PARAMETER:          .AUTHOR
  1689.             DESCRIPTION:        Author's name and department
  1690.             ARGUMENTS:          Multi-line
  1691.             REQUIREMENTS:       OPTIONAL, SINGLE
  1692.             TYPICAL ARGUMENTS:
  1693.             NOTES:
  1694.  
  1695.  
  1696.  
  1697.                                          30
  1698.  
  1699.  
  1700.  
  1701.                                FORMATTING SOURCE CODE
  1702.  
  1703.  
  1704.             PARAMETER:          .REVISION
  1705.             DESCRIPTION:        Revision history
  1706.             ARGUMENTS:          One argument (first line) & multi-line
  1707.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1708.             TYPICAL ARGUMENTS:  DATE (on the first line)
  1709.             NOTES:              The DATE must appear on the same line as
  1710.                                 the .REVISION delimiter.  Comments and
  1711.                                 notes on the revisions appear on
  1712.                                 following lines.  Maximum number of
  1713.                                 occurrences of this parameter is 128.
  1714.                                 It is used by the Revision Notice
  1715.                                 produced by the DOC program.
  1716.  
  1717.             PARAMETER:          .FIXES
  1718.             DESCRIPTION:        Fix history
  1719.             ARGUMENTS:          One argument (first line) & multi-line
  1720.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1721.             TYPICAL ARGUMENTS:  DATE (on the first line)
  1722.             NOTES:              The DATE must appear on the same line as
  1723.                                 the .FIXES delimiter.  Comments and
  1724.                                 notes on the fix appear on following
  1725.                                 lines.  Maximum number of occurrences of
  1726.                                 this parameter (for one module) is 128.
  1727.                                 It is used by the Fix Notice produced by
  1728.                                 the DOC program.
  1729.  
  1730.             PARAMETER:          .CAUTION
  1731.             DESCRIPTION:        Cautions concerning usage
  1732.             ARGUMENTS:          Multi-line
  1733.             REQUIREMENTS:       OPTIONAL, SINGLE
  1734.             TYPICAL ARGUMENTS:
  1735.             NOTES:              Possible unpleasant side affects,
  1736.             privileges required (VMS), etc.
  1737.  
  1738.             PARAMETER:          .OVERHEAD
  1739.             DESCRIPTION:        Memory/file usage
  1740.             ARGUMENTS:          Multi-line
  1741.             REQUIREMENTS:       OPTIONAL, SINGLE
  1742.             TYPICAL ARGUMENTS:
  1743.             NOTES:               Code, data, and stack usage
  1744.  
  1745.             PARAMETER:          .COMMENTS
  1746.             DESCRIPTION:        Miscellaneous notes
  1747.             ARGUMENTS:          Multi-line
  1748.             REQUIREMENTS:       OPTIONAL, SINGLE
  1749.             TYPICAL ARGUMENTS:
  1750.             NOTES:              This is the area to explain caveats
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.  
  1758.  
  1759.  
  1760.                                          31
  1761.  
  1762.  
  1763.  
  1764.                                FORMATTING SOURCE CODE
  1765.  
  1766.  
  1767.             PARAMETER:          .RETURNS
  1768.             DESCRIPTION:        Return value and description
  1769.             ARGUMENTS:          Multi-line
  1770.             REQUIREMENTS:       REQUIRED, SINGLE
  1771.             TYPICAL ARGUMENTS:
  1772.             NOTES:              Describe return data type, or if no data
  1773.             returned
  1774.  
  1775.             PARAMETER:          .LANGUAGE
  1776.             DESCRIPTION:        Source language of module
  1777.             ARGUMENTS:          Multi-line
  1778.             REQUIREMENTS:       OPTIONAL, SINGLE
  1779.             TYPICAL ARGUMENTS:
  1780.             NOTES:
  1781.  
  1782.             PARAMETER:          .EXAMPLE
  1783.             DESCRIPTION:        Source code for example
  1784.             ARGUMENTS:          Multi-line
  1785.             REQUIREMENTS:       OPTIONAL, SINGLE
  1786.             TYPICAL ARGUMENTS:
  1787.             NOTES:
  1788.  
  1789.             PARAMETER:          .SEE_ALSO
  1790.             DESCRIPTION:        Cross references
  1791.             ARGUMENTS:          Multi-line
  1792.             REQUIREMENTS:       OPTIONAL, SINGLE
  1793.             TYPICAL ARGUMENTS:
  1794.             NOTES:              Names of related functions or programs
  1795.  
  1796.             PARAMETER:          .NOTICE
  1797.             DESCRIPTION:        Notices
  1798.             ARGUMENTS:          Multi-line
  1799.             REQUIREMENTS:       OPTIONAL, SINGLE
  1800.             TYPICAL ARGUMENTS:
  1801.             NOTES:              Notices, such as copyright declarations
  1802.  
  1803.             PARAMETER:          .LSE
  1804.             DESCRIPTION:        LSE function call prototype
  1805.             ARGUMENTS:          Multi-line
  1806.             REQUIREMENTS:       OPTIONAL, SINGLE
  1807.             TYPICAL ARGUMENTS:
  1808.             NOTES:              This field is provided for those who
  1809.                                 wish to write a utility to extract
  1810.                                 information for their language-
  1811.                                 sensitive-editors
  1812.  
  1813.             PARAMETER:          .REFERENCES
  1814.             DESCRIPTION:        External references
  1815.             ARGUMENTS:          Multi-line
  1816.             REQUIREMENTS:       OPTIONAL, SINGLE
  1817.             TYPICAL ARGUMENTS:
  1818.             NOTES:              Names of modules that will be linked
  1819.             from other libraries
  1820.  
  1821.  
  1822.  
  1823.                                          32
  1824.  
  1825.  
  1826.  
  1827.                                FORMATTING SOURCE CODE
  1828.  
  1829.  
  1830.             PARAMETER:          .CONVENTIONS
  1831.             DESCRIPTION:        Conventions utilized
  1832.             ARGUMENTS:          Multi-line
  1833.             REQUIREMENTS:       OPTIONAL, SINGLE
  1834.             TYPICAL ARGUMENTS:
  1835.             NOTES:              Registers saved, registers destroyed,
  1836.             etc, if not obvious
  1837.  
  1838.             PARAMETER:          .DIAGRAM
  1839.             DESCRIPTION:        Program flow diagram
  1840.             ARGUMENTS:          Multi-line
  1841.             REQUIREMENTS:       OPTIONAL, SINGLE
  1842.             TYPICAL ARGUMENTS:
  1843.             NOTES:              Flow diagram in the caller's favorite
  1844.                                 code methodology, such as pseudo-code.
  1845.  
  1846.             PARAMETER:          .PAGE
  1847.             DESCRIPTION:        Page break
  1848.             ARGUMENTS:          None
  1849.             REQUIREMENTS:       OPTIONAL, MULTIPLE
  1850.             TYPICAL ARGUMENTS:  (none)
  1851.             NOTES:              .PAGE is actually a pseudo-parameter.
  1852.                                 Appearance of this parameter at the
  1853.                                 beginning of a line in the body of the
  1854.                                 description of a parameter, causes a
  1855.                                 page-break in the output documentation.
  1856.  
  1857.             PARAMETER:          .INCLUDES
  1858.             DESCRIPTION:        Required include files
  1859.             ARGUMENTS:          Multi-line
  1860.             REQUIREMENTS:       OPTIONAL, SINGLE
  1861.             TYPICAL ARGUMENTS:  Header file names
  1862.             NOTES:
  1863.  
  1864.             PARAMETER:          .ERRORS
  1865.             DESCRIPTION:        Action taken on error conditions
  1866.             ARGUMENTS:          Multi-line
  1867.             REQUIREMENTS:       OPTIONAL, SINGLE
  1868.             TYPICAL ARGUMENTS:
  1869.             NOTES:              Descriptions of actions taken as a
  1870.                                 result of error conditions, such as
  1871.                                 displaying messages, logging, etc.
  1872.  
  1873.             PARAMETER:          .ENDOC
  1874.             DESCRIPTION:        End of documentation header
  1875.             ARGUMENTS:          No arguments (arguments are ignored)
  1876.             REQUIREMENTS:       REQUIRED, SINGLE
  1877.             TYPICAL ARGUMENTS:  (NO arguments)
  1878.             NOTES:
  1879.  
  1880.  
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.                                          33
  1887.  
  1888.  
  1889.  
  1890.                                FORMATTING SOURCE CODE
  1891.  
  1892.  
  1893.             Parameter Summary
  1894.  
  1895.  
  1896.  
  1897.             Parameter            Multiple     Single     Optional    Required
  1898.  
  1899.             .MODULE (first)                   +++++++                 +++++++
  1900.  
  1901.             .LIBRARY                          +++++++                 +++++++
  1902.  
  1903.             .TYPE                             +++++++                 +++++++
  1904.  
  1905.             .DESCRIPTION                      +++++++                 +++++++
  1906.  
  1907.             .ARGUMENTS                        +++++++                 +++++++
  1908.  
  1909.             .NARRATIVE                        +++++++                 +++++++
  1910.  
  1911.             .APPLICATION          +++++++                             +++++++
  1912.  
  1913.             .SYSTEM               +++++++                             +++++++
  1914.  
  1915.             .RETURNS                          +++++++                 +++++++
  1916.  
  1917.             .ENDOC (last)                     +++++++                 +++++++
  1918.  
  1919.             .AUTHOR                           +++++++     +++++++
  1920.  
  1921.             .REVISIONS            +++++++                 +++++++
  1922.  
  1923.             .FIXES                +++++++                 +++++++
  1924.  
  1925.             .CAUTION                          +++++++     +++++++
  1926.  
  1927.             .OVERHEAD                         +++++++     +++++++
  1928.  
  1929.             .COMMENTS                         +++++++     +++++++
  1930.  
  1931.             .LANGUAGE                         +++++++     +++++++
  1932.  
  1933.             .EXAMPLE                          +++++++     +++++++
  1934.  
  1935.             .SEE_ALSO                         +++++++     +++++++
  1936.  
  1937.             .NOTICE                           +++++++     +++++++
  1938.  
  1939.             .LSE                              +++++++     +++++++
  1940.  
  1941.             .REFERENCES                       +++++++     +++++++
  1942.  
  1943.             .CONVENTIONS                      +++++++     +++++++
  1944.  
  1945.             .DIAGRAM                          +++++++     +++++++
  1946.  
  1947.  
  1948.  
  1949.                                          34
  1950.  
  1951.  
  1952.  
  1953.                                FORMATTING SOURCE CODE
  1954.  
  1955.  
  1956.  
  1957.             .PAGE                 +++++++                 +++++++
  1958.  
  1959.             .INCLUDES                         +++++++     +++++++
  1960.  
  1961.             .ERRORS                           +++++++     +++++++
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.  
  1993.  
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.                                          35
  2013.  
  2014.  
  2015.  
  2016.  
  2017.                                    ADDING/UPDATING
  2018.  
  2019.  
  2020.             Building Documentation Libraries
  2021.  
  2022.  
  2023.             To either add or update a module in DOCZ you must:
  2024.  
  2025.                  (1)  Provide the source file with a documentation
  2026.                       header with all required fields filled-in, and as
  2027.                       many optional fields filled-in as desirable.  One
  2028.                       documentation header is required for each of the
  2029.                       modules in the source file.
  2030.  
  2031.                  (2)  Copy or rename the source file containing the
  2032.                       module(s) to the location that will be specified
  2033.                       as the "source file" to the DOCXL program, or use
  2034.                       your version control software to insert the file
  2035.                       into the source code library or source code
  2036.                       library directory.
  2037.  
  2038.                  VMS version:
  2039.  
  2040.                       You may wish to convert the file to Stream_LF at
  2041.                       this time, so that the DOC program will not have
  2042.                       to perform the conversion while it is processing.
  2043.                       An FDL is provided in the data directory for this
  2044.                       purpose.  If the source is to be maintained in a
  2045.                           library, instead of copying the file to the
  2046.                       CMS
  2047.                       documentation directory, use CMS to insert (or
  2048.                       update) the file in the CMS library.
  2049.  
  2050.                            CONVERT/FDL=DOCDAT:STREAM <filename>
  2051.  
  2052.                  (3)  Run the DOCXL program to update the Documentation
  2053.                       Index File.
  2054.  
  2055.             The command line format for the DOCXL program, to update or
  2056.             add a module is:
  2057.  
  2058.                  DOCXL <library name> <module name> <source file>
  2059.  
  2060.  
  2061.  
  2062.  
  2063.  
  2064.  
  2065.  
  2066.  
  2067.  
  2068.  
  2069.  
  2070.  
  2071.  
  2072.  
  2073.  
  2074.  
  2075.  
  2076.  
  2077.                                          37
  2078.  
  2079.  
  2080.  
  2081.                                    ADDING/UPDATING
  2082.  
  2083.  
  2084.             where:
  2085.  
  2086.                  library name
  2087.  
  2088.                       is the name you have chosen to collect this
  2089.                       program/function logically (see "Naming
  2090.                       Conventions").  The library name must not contain
  2091.                       any punctuation (except the underscore character).
  2092.  
  2093.                  module name
  2094.  
  2095.                       is the name for this module.  The module name must
  2096.                       not contain any punctuation (except the underscore
  2097.                       character).
  2098.  
  2099.                  source file
  2100.  
  2101.                       is the name of the source file containing the
  2102.                       module.  If the file is to be located in a sub-
  2103.                       directory of the default source directory (i.e.
  2104.                       pointed to by the DOCSRC symbol or logical name),
  2105.                       no device or directory need be specified.  The
  2106.                       sub-directory name will be the name of the library
  2107.                       (in upper case).  It is usually most convenient to
  2108.                       specify the file name only, but if you choose to
  2109.                       specify a full path, the DOCZ system will
  2110.                       optionally perform symbol substitution imbedded in
  2111.                       directory specifications.  Surround the symbol
  2112.                       with the dollar sign, ($), and an attempt will be
  2113.                       made to find a substitution in the environment
  2114.                       (either CLI symbols or (VMS) logical names) when
  2115.                       the source file is extracted.  For example:
  2116.  
  2117.                            $HEADER$fred.c
  2118.  
  2119.                       in which an attempt will be made to substitute for
  2120.                       HEADER, if an equivalent exists in the
  2121.                       environment.
  2122.  
  2123.             The DOCXL program will read the command line arguments and
  2124.             update the Documentation Index with the module's name and
  2125.             file in which it is contained.  If the module did not
  2126.             previously exist in the index, it is added at the end, and
  2127.             the introduction date for that module is set to the current
  2128.             date.  If the module did previously exist, the modification
  2129.             date and time are set to the current date and time.  If a
  2130.             new source file specification for a previously existing
  2131.             module is specified, the file specification field is updated
  2132.             with the new data.
  2133.  
  2134.             The DOCXL program does not open the module source file or
  2135.             attempt to validate the documentation header for the module;
  2136.             this is only done by the DOC program, at the time
  2137.             documentation is being produced.  Wildcards are not honored,
  2138.  
  2139.  
  2140.                                          38
  2141.  
  2142.  
  2143.  
  2144.                                    ADDING/UPDATING
  2145.  
  2146.  
  2147.             and only one module can be added or updated by the DOCXL
  2148.             program at a time (but see the DOCLIS program for automatic
  2149.             multiple adds/updates).  If a source file contains several
  2150.             modules, DOCXL must be run once for each module, even though
  2151.             the same source file is specified each time.
  2152.  
  2153.             Modules with the same module name may be specified in
  2154.             different libraries without conflict.
  2155.  
  2156.             It is recommended that lower case be used for file
  2157.             specifications on VMS and MSDOS systems, to allow easier
  2158.             transporting of the Documentation Index File to Unix systems
  2159.             (using the ASCII Transport File feature).
  2160.  
  2161.             The DOC program may now be run against the module.  The DOC
  2162.             program will produce the output documentation for one or
  2163.             more modules in a library, or for all modules in a library.
  2164.             The DOC program is also capable of producing Change Notices,
  2165.             Revision Notices, Introduction Notices, and Fix Notices.
  2166.             See the next section for details.
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.  
  2185.  
  2186.  
  2187.  
  2188.  
  2189.  
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.  
  2203.                                          39
  2204.  
  2205.  
  2206.  
  2207.  
  2208.                               PUBLISHING DOCUMENTATION
  2209.  
  2210.  
  2211.             Full Library Documentation
  2212.  
  2213.             The command line format for the DOC program, to produce all
  2214.             of the documentation for a single library is:
  2215.  
  2216.                  DOC <library name>
  2217.  
  2218.             For the specified library name, the DOC program will:
  2219.  
  2220.                  (1)  build a title page as a cover for the
  2221.                       documentation
  2222.  
  2223.                  (2)  format a "library introduction" for presentation
  2224.                       at the front of the library documentation.  See
  2225.                       the next section for details.
  2226.  
  2227.                  (3)  scan the index for all modules in the specified
  2228.                       library
  2229.  
  2230.                  (4)  sort the module names alphabetically
  2231.  
  2232.                  (5)  scan each of the source files for the
  2233.                       documentation header for each of the modules
  2234.  
  2235.                  (6)  extract the documentation parameters with their
  2236.                       associated arguments
  2237.  
  2238.                  (7)  reformat the documentation into print image
  2239.  
  2240.                  (8)  format the print image with page numbers, page
  2241.                       headers, page footers, etc.
  2242.  
  2243.                  (9)  build an alphabetical table of contents
  2244.  
  2245.                  (10) build a module description summary
  2246.  
  2247.                  (12) build a operating system platform summary
  2248.  
  2249.                  (13) build a list of modules with their associated
  2250.                       application keywords sorted alphabetically
  2251.  
  2252.                  (14) build a set of alphabetically sorted permutations
  2253.                       of the module descriptions
  2254.  
  2255.                  (15) build a quick-reference of module argument
  2256.                       parameters and output it to the documentation
  2257.  
  2258.                  (16) if any modules have improper documentation, the
  2259.                       names of the modules and the errors detected will
  2260.                       be output to a file, <library name>.ERR.
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.                                          41
  2268.  
  2269.  
  2270.  
  2271.                               PUBLISHING DOCUMENTATION
  2272.  
  2273.  
  2274.             Printing
  2275.  
  2276.             The DOC program does not print directly to print devices or
  2277.             queues.  It produces a file, <library name>.DOC in the
  2278.             default directory which has been formatted into print image
  2279.             and can be sent to a printing device.  The file can be
  2280.             deleted after printing, if it is no longer needed.
  2281.  
  2282.  
  2283.  
  2284.             The Library Introduction
  2285.  
  2286.             When the full library documentation is generated, the DOC
  2287.             program searches the Documentation Reference Directory for a
  2288.             file with the same name as the library specified, and with
  2289.             the extension ".COV" (in upper case on the Unix platform).
  2290.             If found, this file will be reformatted into print image and
  2291.             presented after the title page of the library documentation.
  2292.             This file should contain raw text, with no documentation
  2293.             parameters.
  2294.  
  2295.             For example:  the name of the library for which your are
  2296.             generating full library documentation is "CLIB."  The DOC
  2297.             program is invoked by:
  2298.  
  2299.                  DOC CLIB
  2300.  
  2301.             The Documentation Reference Directory is scanned for a file
  2302.             named "CLIB.COV," and it is included in the output
  2303.             documentation just after the title page.
  2304.  
  2305.  
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.  
  2318.  
  2319.  
  2320.  
  2321.  
  2322.  
  2323.  
  2324.  
  2325.  
  2326.  
  2327.  
  2328.  
  2329.  
  2330.                                          42
  2331.  
  2332.  
  2333.  
  2334.                               PUBLISHING DOCUMENTATION
  2335.  
  2336.  
  2337.             Revision/Fix Notices
  2338.  
  2339.             The command line format for the DOC program, to produce a
  2340.             Revision Notice for a single library name is:
  2341.  
  2342.                  DOC <library name> </r[=DATE]>
  2343.  
  2344.             The command line format for the DOC program, to produce a
  2345.             Fix Notice for a single library name is:
  2346.  
  2347.                  DOC <library name> </f[=DATE]>
  2348.  
  2349.             If the options are specified with no dates, as in:
  2350.  
  2351.                  DOC ULIB /F
  2352.  
  2353.             the current day's date will be used (see the DOCZ PROGRAM
  2354.             REFERENCE, EXAMPLES).  Revision and Fix Notices are based on
  2355.             the dates in the documentation headers accompanied by the
  2356.             respective .REVISION or .FIXES parameters.  The revision or
  2357.             fix description and date are provided by the programmer when
  2358.             the changes to the code is performed.
  2359.  
  2360.             The revision or fix date is specified in the usual date
  2361.                    (leading zeros not required in the default date
  2362.             format
  2363.             format), and the date is inclusive.  Case is ignored in all
  2364.             arguments to DOC.
  2365.  
  2366.             For the specified library name, the DOC program will:
  2367.  
  2368.                  (1)  build a title page as a cover for the
  2369.                       documentation that specifies that this
  2370.                       documentation is a revision or fix notice
  2371.  
  2372.                  (2)  scan the index for all modules in the specified
  2373.                       library that have a modification date equal to or
  2374.                       later than the date specified on the command line
  2375.  
  2376.                  (3)  sort the module names alphabetically
  2377.  
  2378.                  (4)  scan each of the source files for the
  2379.                       documentation header for each of the modules
  2380.  
  2381.                  (7)  extract the documentation parameters with their
  2382.                       associated arguments for only those modules that
  2383.                       have a revision or fix date specified (with the
  2384.                       .REVISION or .FIXES parameter) that is the same
  2385.                       as, or later than the date specified on the
  2386.                       command line to the DOC program.  All source files
  2387.                       will be read, but documentation will be output for
  2388.                       only those modules that match the above criteria.
  2389.  
  2390.                  (8)  reformat the data into print image, as for the
  2391.                       full library documentation.
  2392.  
  2393.  
  2394.                                          43
  2395.  
  2396.  
  2397.  
  2398.                               PUBLISHING DOCUMENTATION
  2399.  
  2400.  
  2401.  
  2402.                  (9)  no index, quick-reference, table of contents, or
  2403.                       application keyword index will be output.
  2404.  
  2405.  
  2406.  
  2407.  
  2408.  
  2409.  
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.                                          44
  2458.  
  2459.  
  2460.  
  2461.                               PUBLISHING DOCUMENTATION
  2462.  
  2463.  
  2464.             Change Notices
  2465.  
  2466.             The command line format for the DOC program, to produce a
  2467.             Change Notice for a single library name is:
  2468.  
  2469.                  DOC <library name> </m[=DATE]>
  2470.  
  2471.                  (1)  Operation is the same as a Revision/Fix Notice,
  2472.                       except that only modules that have been modified
  2473.                       on or since the date specified will have
  2474.                       documentation output.  The documentation headers
  2475.                       do not have to be modified for Change Notices.
  2476.                       Modification dates are maintained in the
  2477.                       Documentation Index File.
  2478.  
  2479.             This Change Notice is provided to provide library
  2480.             documentation to users who must be provided with the very
  2481.             latest documentation.
  2482.  
  2483.  
  2484.  
  2485.             Library Summary
  2486.  
  2487.             A Library Summary consists of the following:
  2488.  
  2489.                  (1)  a title page as a cover for the documentation
  2490.  
  2491.                  (2)  a "Library Introduction" for presentation at the
  2492.                       front of the library documentation.
  2493.  
  2494.                  (3)  a module description summary
  2495.  
  2496.                  (4)  an operating system platform summary
  2497.  
  2498.                  (5)  a list of modules with their associated
  2499.                       application keywords sorted alphabetically
  2500.  
  2501.                  (6)  a set of alphabetically sorted permutations of the
  2502.                       module descriptions
  2503.  
  2504.                  (7)  a quick-reference of module argument parameters
  2505.                       and output it to the documentation
  2506.  
  2507.                  (8)  if any modules have improper documentation, the
  2508.                       names of the modules and the errors detected will
  2509.                       be output to a file, <library name>.ERR.
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.                                          45
  2521.  
  2522.  
  2523.  
  2524.                               PUBLISHING DOCUMENTATION
  2525.  
  2526.  
  2527.             All of this information is provided with the "Full Library
  2528.             Documentation" except that none of the individual module
  2529.             documentation appears in the Library Summary.  You will find
  2530.             that the publishing of several introduction, revision,
  2531.             and/or fix notices may make the summary substantially out-
  2532.             of-date (some programmers may tend to use only the summary,
  2533.             anyway).  The /s option provides a current summary.
  2534.  
  2535.                  DOC <library name> </s>
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554.  
  2555.  
  2556.  
  2557.  
  2558.  
  2559.  
  2560.  
  2561.  
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.  
  2570.  
  2571.  
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.                                          46
  2584.  
  2585.  
  2586.  
  2587.                               PUBLISHING DOCUMENTATION
  2588.  
  2589.  
  2590.             Single Module Documentation
  2591.  
  2592.             The command line format for the DOC program, to produce
  2593.             documentation for one or more modules in a library is:
  2594.  
  2595.                  DOC <library name> <module name>
  2596.  
  2597.                       or
  2598.  
  2599.                  DOC <library name> <module name> <module name> ...
  2600.  
  2601.                  (1)  Only the documentation for the module or modules
  2602.                       specified, will be generated.  There will be no
  2603.                       title page, index, quick-reference, or application
  2604.                       keyword index.
  2605.  
  2606.             Whenever a new module is added to your DOCZ library, you
  2607.             should run the DOC program on the module to verify that the
  2608.             documentation header has been formatted correctly.
  2609.  
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.  
  2623.  
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.                                          47
  2647.  
  2648.  
  2649.  
  2650.  
  2651.                                   SELECTING OPTIONS
  2652.  
  2653.  
  2654.             The Configuration File
  2655.  
  2656.             A great variety of options are enabled and customized
  2657.             through the use of the Configuration File.  This section
  2658.             explains how to format records in that file to select such
  2659.             options as printing output enhancement, error and
  2660.             informational logging, alternate directory structures,
  2661.             language independence, and custom interfaces to version
  2662.                     software.
  2663.             control
  2664.  
  2665.             The Configuration File is a text data file and can be
  2666.             generated with a text editor.  The file name must be
  2667.             "DOCZ.CFG" (in upper-case on the Unix platform).    A
  2668.             prototype DOCZ.CFG file is produced during the installation
  2669.             procedure.
  2670.  
  2671.             There can be more than one DOCZ Configuration File on the
  2672.             system at a time.  This condition is allowed to support
  2673.             Configuration Files for several different printers on the
  2674.             system.  The DOCZ programs search the current directory
  2675.             first for the Configuration File.  If none is found in the
  2676.             current directory, the Documentation Reference Directory is
  2677.             then searched.
  2678.  
  2679.  
  2680.  
  2681.             The Printer Interface
  2682.  
  2683.             DOCZ provides a means to enhance the format of the output
  2684.             documentation through the use of printer features.  Due to
  2685.             the immense number of features available on today's
  2686.             printers, only a minimum number of features can be
  2687.             implemented; but, they are the type of features that provide
  2688.             for very readable documentation.  You will find that a large
  2689.             library under the control of a DOCZ System can produce very
  2690.             voluminous documentation.  Hence, you will want to get as
  2691.             many lines of output on your printed documentation as is
  2692.             possible, while still maintaining readability.
  2693.  
  2694.             If the Configuration File does not exist or does not contain
  2695.             any printer options when the DOC program is run, the output
  2696.             will be formatted for a "generic" printer.  A minimum
  2697.             requirement for any printer used by DOCZ is that the printer
  2698.             be able to perform a form-feed.
  2699.  
  2700.  
  2701.  
  2702.  
  2703.  
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.  
  2710.  
  2711.                                          49
  2712.  
  2713.  
  2714.  
  2715.                                   SELECTING OPTIONS
  2716.  
  2717.  
  2718.             To select printer options, Configuration File records are
  2719.             formatted as in:
  2720.  
  2721.                  KEY,PARAMETER
  2722.  
  2723.             where:
  2724.  
  2725.                  KEY       PARAMETER
  2726.  
  2727.                  PC,       Number of columns (Ex: 132, default is 80)
  2728.                  PN,       Number of lines per page (default is 66)
  2729.                  PL,       Left margin (default is 0)
  2730.                  PR,       Right margin (default is 0)
  2731.                  PA,       Name of the printer (default is no printer
  2732.                            name)
  2733.                  PI,       Initialization tokens from PSET (up to 8)
  2734.                  PE,       Exit tokens from PSET (up to 8)
  2735.  
  2736.             The KEY case is ignored, and the case of the PSET tokens is
  2737.             always ignored.  All occurrences of KEYs in the
  2738.             Configuration File are optional, and only the parameters
  2739.             specified will be modified.  If not modified, all parameters
  2740.             will default to values appropriate for a "generic" printer.
  2741.             See the DOCZ Utility documentation for more information on
  2742.             installing printer control sequences using PSET and/or
  2743.             PCODE.
  2744.  
  2745.             The KEYs must be the first character in the line.  If a
  2746.             pound symbol (#) appears as the first character in a line,
  2747.             that line is ignored (and taken as a comment).  The printer
  2748.             name, specified by 'pa', must be the same as the installed
  2749.             in the PSET database for the _PRINTER token
  2750.  
  2751.                  VMS version:   PSET.DAT must be in the data directory.
  2752.                                 DOCZ.CFG must be in the current
  2753.                                 directory or the Reference Directory
  2754.  
  2755.                  MSDOS & UNIX:  PSET.DAT must be in the search PATH.
  2756.                                 DOCZ.CFG must be in the current
  2757.                                 directory or the Reference Directory
  2758.  
  2759.             An example of DOCZ.CFG:
  2760.  
  2761.                  # the name of the printer
  2762.                  pa,DEC LN03
  2763.                  # 88 columns
  2764.                  pc,88
  2765.                  # 60 lines
  2766.                  pn,60
  2767.                  # left margin = 8
  2768.                  pl,8
  2769.                  # initialize, reset to power-up state
  2770.                  pi,lzreset
  2771.                  # vertical pitch = 9
  2772.  
  2773.  
  2774.                                          50
  2775.  
  2776.  
  2777.  
  2778.                                   SELECTING OPTIONS
  2779.  
  2780.  
  2781.                  pi,lzvp8
  2782.                  # horizontal pitch = 12
  2783.                  pi,lzhp12
  2784.                  # defeat top and bottom margins
  2785.                  pi,lznotbm
  2786.                  # exit, reset to power-up state
  2787.                  pe,lzreset
  2788.  
  2789.             The pa parameter in the above example causes the DOC program
  2790.             to verify the PSET database for the printer specified.  If
  2791.             the argument matches the printer installed in the PSET
  2792.             database with the PCODE utility, character attributes will
  2793.             be utilized to enhance the appearance of the output
  2794.             documentation.  To defeat the use of character attributes,
  2795.             omit the use of an pa parameter.
  2796.  
  2797.             The pc parameter specifies that 88 columns will be produced
  2798.             in the output; this assumes that the horizontal pitch on the
  2799.             printer will have been adjusted to allow 88 columns on the
  2800.             printed page.   The pn parameter specifies that only 60
  2801.             lines per page will be output, instead of the default 66.
  2802.  
  2803.  
  2804.  
  2805.  
  2806.  
  2807.  
  2808.  
  2809.  
  2810.  
  2811.  
  2812.  
  2813.  
  2814.  
  2815.  
  2816.  
  2817.  
  2818.  
  2819.  
  2820.  
  2821.  
  2822.  
  2823.  
  2824.  
  2825.  
  2826.  
  2827.  
  2828.  
  2829.  
  2830.  
  2831.  
  2832.  
  2833.  
  2834.  
  2835.  
  2836.  
  2837.                                          51
  2838.  
  2839.  
  2840.  
  2841.                                   SELECTING OPTIONS
  2842.  
  2843.  
  2844.             The four pi parameters specify four tokens that will be
  2845.             matched from the PSET database to provide four
  2846.             initialization sequences to be output to the printer before
  2847.             any printing is done.  The single pe parameter specifies an
  2848.             exit sequence that will be sent to the printer at the end of
  2849.             printing.  Note that the tokens specified in the above
  2850.             example are user-supplied (provided by you).  In a typical
  2851.             application, the above example tokens could represent:
  2852.  
  2853.                  lzreset = reset to power-up configuration
  2854.                  lzvp8 = set vertical pitch to 8 l.p.i.
  2855.                  lzhp12 = set horizontal pitch to 12 c.p.i.
  2856.                  lznotbm = defeat top and bottom margins
  2857.  
  2858.             The DOCZ Installation Kit will provide a prototype DOCZ.CFG
  2859.             Configuration File, but it will contain no print formatting
  2860.             information.  No assumptions about your printer hardware are
  2861.             made.  The PCODE utility is supplied with DOCZ to provide
  2862.             printer features for many of the popular brands of printers.
  2863.             You may add your own parameters to the prototype DOCZ.CFG.
  2864.  
  2865.  
  2866.  
  2867.  
  2868.  
  2869.  
  2870.  
  2871.  
  2872.  
  2873.  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892.  
  2893.  
  2894.  
  2895.  
  2896.  
  2897.  
  2898.  
  2899.  
  2900.                                          52
  2901.  
  2902.  
  2903.  
  2904.                                   SELECTING OPTIONS
  2905.  
  2906.  
  2907.             Multiple Language Support
  2908.  
  2909.             The compiler or assembler is made to ignore everything in
  2910.             the documentation header by surrounding the documentation
  2911.             header with conditional compile (or assembly) directives
  2912.             (for those languages that support such).  Most PASCAL and C
  2913.             compilers and many Assembly language assemblers allow
  2914.             conditionals.  For languages that allow only single-line
  2915.             comments, such as BASIC, COBOL, and FORTRAN, the user may
  2916.             specify a "comment string mask" that describes the comment
  2917.             format for the language being used.  The comment string mask
  2918.             may be specified to the DOCZ system using the DOCZ
  2919.             Configuration File (DOCZ.CFG) by specifying the file name
  2920.             extension associated with files containing the computer
  2921.             language (see "Specifying Comment String Masks for File
  2922.             Extensions" in a following section).
  2923.  
  2924.  
  2925.  
  2926.             Specifying a Comment String Mask
  2927.  
  2928.             The comment string mask is formatted such that:
  2929.  
  2930.                  ?        hes any single character
  2931.                       matc
  2932.  
  2933.                  n    causes all numerics to be skipped (such as line
  2934.                       numbers).  n is specified only once in the comment
  2935.                       string mask to skip all numerics starting at the
  2936.                       corresponding position in the input source line.
  2937.  
  2938.                  Any other character is matched literally (including
  2939.                  spaces and TAB characters).
  2940.  
  2941.             The comment string mask is always specified with double
  2942.             quotation marks to preserve leading or trailing blanks.
  2943.  
  2944.             DOCZ System programs always expand TAB characters to spaces
  2945.             at tabstop eight, or to the tabstop specified with the o
  2946.             option in the Configuration File.  Consequently, if a TAB is
  2947.             part of the comment string mask, it must be replaced with
  2948.             the requisite number of spaces.
  2949.  
  2950.             Comment String Mask Examples:
  2951.  
  2952.                  BASIC          "n '"
  2953.  
  2954.                       Match any number of digits that start in column
  2955.                       one, then match a space, then match an apostrophe.
  2956.  
  2957.                  COBOL     "* "
  2958.  
  2959.                       Match an asterisk in column one and a space in
  2960.                       column two.
  2961.  
  2962.  
  2963.  
  2964.                                          53
  2965.  
  2966.  
  2967.  
  2968.                                   SELECTING OPTIONS
  2969.  
  2970.  
  2971.                  FORTRAN   "C "
  2972.  
  2973.                       Match an upper-case C in column one and space in
  2974.                       column two.
  2975.  
  2976.             Note that if a TAB were to follow the 'C' in the FORTRAN
  2977.             example, the comment string mask would be specified:
  2978.  
  2979.                  "C       "
  2980.  
  2981.             which is a 'C' followed by seven space characters.  This
  2982.             mask will match when the DOCZ programs expand TAB characters
  2983.             to spaces at tabstop eight.
  2984.  
  2985.  
  2986.  
  2987.             Specifying Comment String Masks for File Extensions
  2988.  
  2989.             This method for specifying a comment string mask using
  2990.             DOCZ.CFG applies a comment string for every source file with
  2991.             a specified file name extension.  The entries in DOCZ.CFG
  2992.             are specified as in:
  2993.  
  2994.                  E,<extension>,<comment string mask>
  2995.  
  2996.             The following is also valid:
  2997.  
  2998.                  E,,<comment string mask>
  2999.  
  3000.             and specifies a comment string mask for filenames with no
  3001.             extension (such as Unix shell scripts).
  3002.  
  3003.             The following comment string masks are provided in the
  3004.             prototype Configuration File by the Installation Program and
  3005.             may be added-to or modified to suite your development
  3006.             environment:
  3007.  
  3008.                  E,BAS,"n '"
  3009.                  E,COB,"* "
  3010.                  E,FOR,"C "
  3011.                  E,PRG,"* "
  3012.  
  3013.             The case of parameters is always ignored.
  3014.  
  3015.             For assemblers that do not allow "ifdefs," you may need to
  3016.             add:
  3017.  
  3018.                  E,ASM,";"
  3019.  
  3020.  
  3021.  
  3022.  
  3023.  
  3024.  
  3025.  
  3026.  
  3027.                                          54
  3028.  
  3029.  
  3030.  
  3031.                                   SELECTING OPTIONS
  3032.  
  3033.  
  3034.             Transaction Logging
  3035.  
  3036.             The DOCZ programs provide a logging facility that can help
  3037.             automate the administration of a DOCZ System.  The logging
  3038.             facility allows the recording of errors and information in a
  3039.             file in the Documentation Reference Directory, named
  3040.             DOCZ.LOG.  The various levels of logging are:
  3041.  
  3042.                  Informational (I)        Status or result of an
  3043.                                           operation
  3044.  
  3045.                  Warning (W)              Notification of an unnatural
  3046.                                           condition, but that does not
  3047.                                           prevent DOCZ processing
  3048.  
  3049.                  Error (E)                Notification of an incorrect
  3050.                                           condition that probably
  3051.                                           prevents normal processing
  3052.  
  3053.                  Fatal (F)                A severe error condition that
  3054.                                           may leave DOCZ files in an
  3055.                                           unknown state or condition
  3056.                                           that may have to be manually
  3057.                                           repaired.
  3058.  
  3059.                  Statistics (S)           Information about time and
  3060.                                           resources for statistical
  3061.                                           purposes.
  3062.  
  3063.             All such conditions are always echoed to the controlling
  3064.             terminal, but, in an automated DOCZ System, such message are
  3065.             often lost or left unnoticed.  If logging is enabled, these
  3066.             messages will be stored where they can be retrieved for
  3067.             examination at a later time.
  3068.  
  3069.             The error level (i.e. Informational, Warning, Error, Fatal,
  3070.             or Statistical) that is logged is under user control:  that
  3071.             is the user can specify zero or more error levels to be
  3072.             logged.  The logging error levels are specified in the
  3073.             Configuration File using an entry in the following format:
  3074.  
  3075.                  L,<error level list>,<number of days to keep entries>
  3076.  
  3077.             where the error level list (field number 2) may contain zero
  3078.             or more of I, W, E, or F.  The default is E and F, which
  3079.             will be used if there is no 'L' record in the Configuration
  3080.             File.  This means that, by default, there will be a DOCZ.LOG
  3081.             created in the Documentation Reference Directory and it will
  3082.             contain messages for every Error and Fatal condition.  The
  3083.             number of days to keep entries (field number 3) specifies
  3084.             the number of days to age entries before they expire and are
  3085.             removed from the log (to prevent the log from growing
  3086.             endlessly).  The default aging period is thirty days.
  3087.  
  3088.  
  3089.  
  3090.                                          55
  3091.  
  3092.  
  3093.  
  3094.                                   SELECTING OPTIONS
  3095.  
  3096.  
  3097.             An empty field number two, as in:
  3098.  
  3099.                  L,
  3100.  
  3101.             defeats all logging.
  3102.  
  3103.             The following example:
  3104.  
  3105.                  # log all messages
  3106.                  L,IEWFS,60
  3107.  
  3108.             specifies that all error levels are to be logged, and
  3109.             entries over sixty days old will be removed (the '#'
  3110.             character precedes comments in the Configuration File).
  3111.  
  3112.             As in the other DOCZ programs and utilities, case is always
  3113.             ignored.
  3114.  
  3115.             Aged entries are always checked the first time a DOCZ
  3116.             program accesses the log, consequently, if a log "cleaning"
  3117.             operation is required (aged entries to be removed), there
  3118.             will be a slight delay in the program while the "cleaning"
  3119.             operation is carried out.  This negates the need for an
  3120.             administrator to manually force a periodic clean-up of the
  3121.             DOCZ log.
  3122.  
  3123.             If "informational" (I) logging is enabled, a history of the
  3124.             DOCZ System usage will be maintained in the log.  This can
  3125.             be a substantial help when administering a DOCZ System that
  3126.             exists on more than one operating system platform.  The
  3127.             DOCLOG program is provided to scan the DOCZ log and produce
  3128.             reports from it (see the documentation for DOCLOG).
  3129.  
  3130.             DOCZ programs that log        DOCZ programs that do not log
  3131.  
  3132.                  DOC                      DOCHELP
  3133.                  DOCXL                    DOCLOG
  3134.                  DOCXLU                   DOCGET
  3135.                  DOCHBLD                  DOCLIS
  3136.                  DOCXLED                  DOCMAN
  3137.                                           DOCLEARN
  3138.  
  3139.  
  3140.  
  3141.  
  3142.  
  3143.  
  3144.  
  3145.  
  3146.  
  3147.  
  3148.  
  3149.  
  3150.  
  3151.  
  3152.  
  3153.                                          56
  3154.  
  3155.  
  3156.  
  3157.                                   SELECTING OPTIONS
  3158.  
  3159.  
  3160.             Alternate Directories and Version Control
  3161.  
  3162.             The Configuration File provides a means for bypassing the
  3163.             DOCZ paths naming conventions to make it easier to apply the
  3164.             DOCZ System to an already existing development environment.
  3165.             In addition, the means is provided to call almost any
  3166.             version control software, should the user not use CMS for
  3167.             VMS or SCCS for Unix System V.  Either or both of these
  3168.             options are selected using the U parameter in the
  3169.             Configuration File such that:
  3170.  
  3171.                  U,[library name],[path],[get command],[DEL]
  3172.  
  3173.             where
  3174.  
  3175.                  library name   may be an empty field or a library name.
  3176.                            If the library name is empty then ALL
  3177.                            libraries will be specified with the U
  3178.                            option.  If not empty, only the named library
  3179.                            will be specified with this U option.  Note
  3180.                            that multiple U records may be specified (up
  3181.                            to one per library).
  3182.  
  3183.                  path      may be an empty field or a path to the source
  3184.                            files, containing the token, "$FILE$," for
  3185.                            which the source file name will be
  3186.                            substituted at run time.  If path is an empty
  3187.                            string the default DOCZ path will be used
  3188.                            (using the DOCSRC symbol/logical name).  If
  3189.                            not empty, DOCZ will substitute the source
  3190.                            file name for $FILE$ in the string specified
  3191.                            in this field of the U record, to form a path
  3192.                            to the file.
  3193.  
  3194.                  get command    may be an empty field or a command to
  3195.                            execute for each module being documented.  If
  3196.                            get command is an empty field, the source
  3197.                            file will be used with the path
  3198.                            specification.  If not empty, the get command
  3199.                            will be executed with the following
  3200.                            substitutions being performed for each
  3201.                            module:
  3202.  
  3203.                            $FILE$              source file name
  3204.                            $LIB$               current library name
  3205.                            $MOD$               current module name
  3206.                            $DOCSRC$            the DOCSRC directory
  3207.                            $DOCREF$            the DOCREF directory
  3208.  
  3209.                            The get command may be either a command file
  3210.                            or program and must be specified
  3211.                            appropriately for the native command
  3212.                            interpreter to execute it.  The net result of
  3213.                            the get command must be to deliver the file
  3214.  
  3215.  
  3216.                                          57
  3217.  
  3218.  
  3219.  
  3220.                                   SELECTING OPTIONS
  3221.  
  3222.  
  3223.                            into the current (default) directory, with
  3224.                            the name specified as in the Documentation
  3225.                            Index File.  This is the same action as a
  3226.                            'get' using SCCS, a 'co' (check-out) using
  3227.                            RCS, or a 'fetch' using CMS.  This command
  3228.                            should not place a reservation on the file.
  3229.  
  3230.                  DEL       if present as the fifth field of a U record,
  3231.                            means that the file should be deleted from
  3232.                            the current directory when DOCZ is done with
  3233.                            it.  If the get command is a version control
  3234.                            "extraction," this option allows the removal
  3235.                            of the file when DOCZ processing is complete,
  3236.                            but this option is only valid in conjunction
  3237.                            with a get command (fourth field).
  3238.  
  3239.             Fields may be quoted with either the double quote character
  3240.             or the apostrophe if they require embedded commas,
  3241.             apostrophes, or double-quotes.
  3242.  
  3243.             For (an MSDOS) example:
  3244.  
  3245.                  U,USRLIB,\source\rcs\$FILE$,co \source\rcs\$FILE$,del
  3246.  
  3247.             where:
  3248.  
  3249.                  the source file can be located by substituting the
  3250.                  source file name as stored in the Documentation Index
  3251.                  File for the $FILE$ token in
  3252.                  "\common\source\rcs\$FILE$", and can be "gotten" or
  3253.                  "fetched" into the default directory by executing the
  3254.                  command line, "co \common\source\rcs\$FILE$".  When the
  3255.                  DOCZ program is done with the file, it will delete it,
  3256.                  as specified by del in the fifth field.
  3257.  
  3258.             Another (Unix) example:
  3259.  
  3260.                  U,,"/u/$LIB$/$FILE$,v",'co /u/$LIB$/$FILE$,v ""',del
  3261.  
  3262.             Since field number two is empty, all libraries will use this
  3263.             U record as a rule.  Note that both field three and four are
  3264.             quoted to preserve the comma that must be embedded in the
  3265.             file specification; field four is quoted with the apostrophe
  3266.             to preserve the double-quote that must be embedded in the
  3267.             field.  Some will recognize the get command in the previous
  3268.             two examples as a Berkeley Unix RCS "check out" command.
  3269.  
  3270.             Another (VMS) example:
  3271.  
  3272.                  U,CLIB,DUA0:[USER.COMMON.SOURCE]$FILE$,,
  3273.  
  3274.             Case is always ignored in the substitution parameters (i.e.
  3275.             $FILE$ and $file$ are equivalent), and in the U record
  3276.             identifier, the U character.
  3277.  
  3278.  
  3279.                                          58
  3280.  
  3281.  
  3282.  
  3283.                                   SELECTING OPTIONS
  3284.  
  3285.  
  3286.             MSDOS Username
  3287.  
  3288.             MSDOS does not have the capability to identify the owner of
  3289.             a process, but the DOCZ log contains the username in each
  3290.             entry.  Therefore, the DOCZ system has the option of
  3291.             providing a username in the DOCZ log if the environment
  3292.             variable, LOGNAME, is defined.  For example:
  3293.  
  3294.                  SET LOGNAME=todd
  3295.  
  3296.             will log the name "todd" as the username.  This may be
  3297.             especially useful on a PC network that uses a shared DOCZ
  3298.             log.
  3299.  
  3300.  
  3301.  
  3302.             Variable TAB Expansion
  3303.  
  3304.  
  3305.             TAB expansion to suite your tastes may be specified via the
  3306.             Configuration File using an o record, as in:
  3307.  
  3308.                  o,tabs,<tabstop>
  3309.  
  3310.             This will cause TABS to be expanded to tabstop, instead of
  3311.             eight (the default).
  3312.  
  3313.             For example:
  3314.  
  3315.                  o,tabs,3
  3316.  
  3317.             while force TABS to be expanded to three spaces.
  3318.  
  3319.             You will need this option in your configuration file to
  3320.             match TAB expansion that may be performed by your program
  3321.             editors.  The DOCZ System performs TAB expansion when
  3322.             producing documentation via the DOC program, and during
  3323.             generation of on-line help libraries via the DOCHBLD
  3324.             program.
  3325.  
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.  
  3337.  
  3338.  
  3339.  
  3340.  
  3341.  
  3342.                                          59
  3343.  
  3344.  
  3345.  
  3346.                                   SELECTING OPTIONS
  3347.  
  3348.  
  3349.             Specifying Command Line Options
  3350.  
  3351.  
  3352.  
  3353.             The [z_opt] command line option that is common to many of
  3354.             the DOCZ programs allows the overriding of DOCZ symbols and
  3355.             default directory specifications.  The [z_opt] option can be
  3356.             specified once or twice on the command line such that:
  3357.  
  3358.                  /z=docref=<alternate DOCREF directory>
  3359.  
  3360.             selects a new DOCREF directory, or if specified as an empty
  3361.             string as in:
  3362.  
  3363.                  /z=docref=
  3364.  
  3365.             Specifies that the DOCREF directory is the current
  3366.             directory.  Identical behavior is valid for:
  3367.  
  3368.                  /z=docsrc=<alternate DOCSRC directory>
  3369.  
  3370.             Case is ignored in the identifiers
  3371.  
  3372.  
  3373.  
  3374.  
  3375.  
  3376.  
  3377.  
  3378.  
  3379.  
  3380.  
  3381.  
  3382.  
  3383.  
  3384.  
  3385.  
  3386.  
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.  
  3393.  
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.                                          60
  3406.  
  3407.  
  3408.  
  3409.                                   SELECTING OPTIONS
  3410.  
  3411.  
  3412.             Option Summary
  3413.  
  3414.                  Options selected via the Configuration File.
  3415.  
  3416.  
  3417.             Transaction Logging
  3418.  
  3419.                  L,<error level list>,<number of days to keep entries>
  3420.  
  3421.             Printer Interface
  3422.  
  3423.                  P<feature key>,<value>
  3424.  
  3425.             Comment String Mask
  3426.  
  3427.                  E,<extension>,<comment string mask>
  3428.  
  3429.             Alternate Directories/Version Control
  3430.  
  3431.                  U,[library name],[directory],[get command],[DEL]
  3432.  
  3433.             Variable TABs
  3434.  
  3435.                  O,TABS,<tabstop>
  3436.  
  3437.             Symbol Override
  3438.  
  3439.                  /z=docref=<alternate DOCREF directory>
  3440.                  /z=docsrc=<alternate DOCSRC directory>
  3441.  
  3442.  
  3443.  
  3444.  
  3445.  
  3446.  
  3447.  
  3448.  
  3449.  
  3450.  
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.  
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.  
  3464.  
  3465.  
  3466.  
  3467.  
  3468.                                          61
  3469.  
  3470.  
  3471.  
  3472.  
  3473.                                  DOCUMENTATION INDEX
  3474.  
  3475.  
  3476.             Dumping the Documentation Index
  3477.  
  3478.             Should the need arise to examine the Documentation Index to
  3479.             determine what, and how many modules it contains; DOCXL with
  3480.             the following command line may be used:
  3481.  
  3482.                  DOCXL /d
  3483.  
  3484.             The entire contents of the Documentation Index will be
  3485.             dumped (in displayable format) to the current output device.
  3486.             For each module, the following is displayed:
  3487.  
  3488.                  Library name
  3489.                  Module name
  3490.                  Date of last modification (in the Documentation Index)
  3491.                  Time of last modification
  3492.                  Date of introduction
  3493.  
  3494.             If the contents of only one library is required, DOCXL also
  3495.             accepts a library name as its first argument, such that
  3496.  
  3497.                  DOCXL [library name] /d
  3498.  
  3499.             Only the modules for library name will be dumped.
  3500.  
  3501.  
  3502.  
  3503.             Displaying Modules Modified Since a Date
  3504.  
  3505.                  DOCXL /dm[=DATE]
  3506.                  DOCXL [library name] /dm[=DATE]
  3507.  
  3508.             All modules in the index that have been modified on or since
  3509.             the date specified, will be displayed, regardless of which
  3510.             library they are in.  If no date is specified, the current
  3511.             date is assumed.
  3512.  
  3513.  
  3514.  
  3515.             Displaying Modules Introduced Since a Date
  3516.  
  3517.                  DOCXL /di[=DATE]
  3518.                  DOCXL [library name] /di[=DATE]
  3519.  
  3520.             All modules in the index that have been introduced on or
  3521.             since the date specified, will be displayed, regardless of
  3522.             which library they are in.  If no date is specified, the
  3523.             current date is assumed.
  3524.  
  3525.  
  3526.  
  3527.  
  3528.  
  3529.  
  3530.  
  3531.  
  3532.                                          63
  3533.  
  3534.  
  3535.  
  3536.                                  DOCUMENTATION INDEX
  3537.  
  3538.  
  3539.             Deleting a Module
  3540.  
  3541.                  DOCXL <library name> <module name> /x
  3542.  
  3543.             The specified module name in the specified library name will
  3544.             be deleted from the Documentation Index.  The actual file
  3545.             that contains the module will not be affected, only the
  3546.             Documentation Index entry for the module.  The deletion must
  3547.             be interactively confirmed by the user.
  3548.  
  3549.  
  3550.  
  3551.             Searching for a Module
  3552.  
  3553.                  DOCXL <module name> /s[=<output file>]
  3554.  
  3555.             The index will be searched for the module name specified,
  3556.             and all matching names in all libraries will be displayed.
  3557.             If an optional output file is specified, it will be appended
  3558.             with the results of the search.  Wildcards are not allowed
  3559.             in module names.
  3560.  
  3561.  
  3562.  
  3563.             Feeding the Documentation Index to Other Programs
  3564.  
  3565.                  DOCXL <library name> /o[=L[M[F[D[T]]]]]
  3566.  
  3567.             The Documentation Index may be output as a text data file in
  3568.             a variety of formats that may be used as in input to other
  3569.             user-written programs using the DOCXL /o option.  The /o
  3570.             option specifies that all modules in a specified library are
  3571.             to be matched and the fields in the Documentation Index are
  3572.             to be output.  The output will be contained in a file named,
  3573.             library name.LST, in the current directory.  The /o option
  3574.             may be followed by an equals character and one or more
  3575.             additional specifiers in any order:
  3576.  
  3577.                  L    list library name
  3578.                  M    list module name
  3579.                  F    list file name
  3580.                  D    list date of update
  3581.                  T    list time of update
  3582.  
  3583.             Any combination of specifiers may be specified, and the
  3584.             output will contain the specified fields in the order you
  3585.             specified.  If no arguments are specified with /o, then all
  3586.             fields will be output in the default order.
  3587.  
  3588.             The output file, library_name.LST, is in the text data
  3589.             format.  You may wish to sort the file using your operating
  3590.             system SORT utility.
  3591.  
  3592.  
  3593.  
  3594.  
  3595.                                          64
  3596.  
  3597.  
  3598.  
  3599.                                  DOCUMENTATION INDEX
  3600.  
  3601.  
  3602.             Reorganizing Documentation Index Files
  3603.  
  3604.             In very large DOCZ installations it may become advantageous
  3605.             to provide more than one Documentation Index File.   For
  3606.             instance, you may have a requirement to maintain an
  3607.             experimental set of documentation in addition to a
  3608.             production set.  DOCXL can be used to create a second (or
  3609.             additional) Documentation Index File using the /e option.
  3610.             This option will extract all modules associated with the
  3611.             named library and place them in another Documentation Index
  3612.             File.  If the other index file already exists, it will add
  3613.             them to the file.
  3614.  
  3615.                  DOCXL <library name> <other Reference Directory> /e
  3616.  
  3617.             Only the directory specification is provided as the second
  3618.             argument, as the file name, DOCXL.DAT, is assumed.  Be sure
  3619.             to modify the required logical names or CLI symbols before
  3620.             running the DOC programs on the other index file.
  3621.  
  3622.             See the "DOCZ PROGRAM REFERENCE" section for more
  3623.             information on using the DOCXL program.
  3624.  
  3625.  
  3626.  
  3627.  
  3628.  
  3629.  
  3630.  
  3631.  
  3632.  
  3633.  
  3634.  
  3635.  
  3636.  
  3637.  
  3638.  
  3639.  
  3640.  
  3641.  
  3642.  
  3643.  
  3644.  
  3645.  
  3646.  
  3647.  
  3648.  
  3649.  
  3650.  
  3651.  
  3652.  
  3653.  
  3654.  
  3655.  
  3656.  
  3657.  
  3658.                                          65
  3659.  
  3660.  
  3661.  
  3662.  
  3663.                                DOCZ PROGRAM REFERENCE
  3664.  
  3665.  
  3666.             DOC
  3667.  
  3668.                  Documentation generation program
  3669.  
  3670.                  Arguments
  3671.  
  3672.                       DOC <library name> [z_opt]
  3673.  
  3674.                            Document an entire library
  3675.  
  3676.                       DOC <library name> <module name> [module name] ...
  3677.                            [z_opt]
  3678.  
  3679.                            Document a single module
  3680.  
  3681.                       DOC <library name> </m[=DATE]> [/s] [z_opt]
  3682.  
  3683.                            Document modules modified since DATE
  3684.  
  3685.                       DOC <library name> </r[=DATE]> [/s] [z_opt]
  3686.  
  3687.                            Document modules revised since DATE
  3688.  
  3689.                       DOC <library name> </f[=DATE]> [/s] [z_opt]
  3690.  
  3691.                            Document modules fixed since DATE
  3692.  
  3693.                       DOC <library name> </i[=DATE]> [/s] [z_opt]
  3694.  
  3695.                            Document modules introduced since DATE
  3696.  
  3697.                       DOC <library name> </s> [z_opt]
  3698.  
  3699.                            Produce a library summary
  3700.  
  3701.                  Returns
  3702.  
  3703.                       EXITNORMAL          If one or more modules match
  3704.                                           command line criteria.
  3705.  
  3706.                       EXITWARN            If no modules match command
  3707.                                      line criteria.
  3708.  
  3709.                       EXITBAD             If DOC cannot run.
  3710.  
  3711.  
  3712.  
  3713.  
  3714.  
  3715.  
  3716.  
  3717.  
  3718.  
  3719.  
  3720.  
  3721.  
  3722.                                          67
  3723.  
  3724.  
  3725.  
  3726.                                DOCZ PROGRAM REFERENCE
  3727.  
  3728.  
  3729.                  Errors
  3730.  
  3731.                       (1)  to library_name.ERR in the current directory
  3732.  
  3733.                            to the log, if logging is enabled
  3734.                       (2)
  3735.  
  3736.                       (3)  to Standard Error
  3737.  
  3738.                  Output
  3739.  
  3740.                       to library_name.DOC in the current directory
  3741.  
  3742.             For an explanation of the [z_opt] command-line option, see
  3743.             "SELECTING OPTIONS:  Specifying Command Line Options."
  3744.  
  3745.             The /s on the command line with the fix, introduction,
  3746.             revision, and/or modification notice options produces a
  3747.             summary of the modules in the notice with output going to a
  3748.             file with the name:
  3749.  
  3750.                  <library_name>.MOD       modification notice
  3751.                  <library_name>.REV       revision notice
  3752.                  <library_name>.FIX       fix notice
  3753.                  <library_name>.INT       introduction notice
  3754.  
  3755.  
  3756.  
  3757.             DOC Examples
  3758.  
  3759.                  DOC clib
  3760.  
  3761.                       Produce the entire documentation set for the CLIB
  3762.                       library.
  3763.  
  3764.                  DOC clib strfunc
  3765.  
  3766.                       Produce the documentation for the module, STRFUNC,
  3767.                       contained in the library, CLIB.
  3768.  
  3769.                  DOC clib /i=8/10/82
  3770.  
  3771.                       Produce the documentation for all modules in the
  3772.                       CLIB library that have been introduced since
  3773.                       8/10/82.
  3774.  
  3775.                  DOC clib /f
  3776.  
  3777.                       Produce the documentation for all modules in the
  3778.                       CLIB library that were "fixed" today.
  3779.  
  3780.  
  3781.  
  3782.  
  3783.  
  3784.  
  3785.  
  3786.                                          68
  3787.  
  3788.  
  3789.  
  3790.                                DOCZ PROGRAM REFERENCE
  3791.  
  3792.  
  3793.              DOCXL
  3794.  
  3795.                  Documentation Index File update
  3796.  
  3797.                  Arguments
  3798.  
  3799.                       DOCXL <library name> <module name> <source file>
  3800.  
  3801.                            [z_opt]
  3802.  
  3803.                            Add/update a module
  3804.  
  3805.                       DOCXL [library name] /d [z_opt]
  3806.  
  3807.                            Display the Documentation Index
  3808.  
  3809.                       DOCXL [library name] /dm[=DATE] [z_opt]
  3810.  
  3811.                            Display modules modified since DATE
  3812.  
  3813.                       DOCXL [library name] /di[=DATE] [z_opt]
  3814.  
  3815.                            Display modules introduced since DATE
  3816.  
  3817.                       DOCXL [library name] /p [z_opt]
  3818.  
  3819.                            Print (output) the Documentation Index
  3820.  
  3821.                       DOCXL [library name] /pm[=DATE] [z_opt]
  3822.  
  3823.                            Print (output) modules modified since DATE
  3824.  
  3825.                       DOCXL [library name] /pi[=DATE] [z_opt]
  3826.  
  3827.                            Print (output) modules introduced since DATE
  3828.  
  3829.                       DOCXL <library name> <module name> /x [z_opt]
  3830.  
  3831.                            Delete a module (with confirmation)
  3832.  
  3833.                       DOCXL <library name> <module name> /xx [z_opt]
  3834.  
  3835.                            Delete a module (without confirmation)
  3836.  
  3837.                       DOCXL <module name> /s [z_opt]
  3838.  
  3839.                            Search for  a module
  3840.  
  3841.                       DOCXL <library name> /o[=L[M[F[D[T]]]]] [z_opt]
  3842.  
  3843.                            Output Documentation Index fields
  3844.  
  3845.  
  3846.  
  3847.  
  3848.  
  3849.                                          69
  3850.  
  3851.  
  3852.  
  3853.                                DOCZ PROGRAM REFERENCE
  3854.  
  3855.  
  3856.                  Returns
  3857.  
  3858.                       EXITNORMAL          If the Documentation Index
  3859.                                           File can be opened.
  3860.  
  3861.                       EXITBAD             If DOCXL cannot run.
  3862.  
  3863.                  Errors
  3864.  
  3865.                            to the log, if logging is enabled
  3866.                       (1)
  3867.  
  3868.                            to Standard Error
  3869.                       (2)
  3870.  
  3871.             The DOCXL program is used to build the Documentation Index
  3872.             File for all modules to be documented in the DOCZ System.
  3873.             The /d and /p options respectively allow displaying and
  3874.             printing of the Index for one or all libraries.  The DOCXL
  3875.             program does not use any files containing documentation
  3876.             headers:  it only manipulates the Documentation Index File.
  3877.             Whenever records in the Documentation Index File must be
  3878.             locked for an inordinate length of time (a few seconds), a
  3879.             message will be displayed on the user's terminal warning of
  3880.             the delay (VMS version only).
  3881.  
  3882.             More information on the usage of the DOCXL program is
  3883.             contained in the section,"DOCUMENTATION INDEX."
  3884.  
  3885.             For an explanation of the [z_opt] command-line option, see
  3886.             "SELECTING OPTIONS:  Specifying Command Line Options."
  3887.  
  3888.  
  3889.  
  3890.  
  3891.  
  3892.  
  3893.  
  3894.  
  3895.  
  3896.  
  3897.  
  3898.  
  3899.  
  3900.  
  3901.  
  3902.  
  3903.  
  3904.  
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.  
  3913.  
  3914.                                          70
  3915.  
  3916.  
  3917.  
  3918.                                DOCZ PROGRAM REFERENCE
  3919.  
  3920.  
  3921.             DOCXL Examples
  3922.  
  3923.                  DOCXL clib strfunc strfunc.asm
  3924.  
  3925.                       Add the STRFUNC module, contained in the
  3926.                       STRFUNC.ASM file, to the CLIB library.
  3927.  
  3928.                  DOCXL /p
  3929.  
  3930.                       Output a printable image of the contents of the
  3931.                       Documentation Index to the file, DOCXL.LST.
  3932.  
  3933.                  DOCXL clib /o=ml
  3934.  
  3935.                       Output module names and library name (in that
  3936.                       order) to CLIB.LST.
  3937.  
  3938.                  DOCXL paslib /o
  3939.  
  3940.                       Output all module information to PASLIB.LST.
  3941.  
  3942.                  DOCXL forlib /dm
  3943.  
  3944.                       Display all modules modified today.
  3945.  
  3946.                  DOCXL ulib /pi=8/2/86
  3947.  
  3948.                       Output all modules introduced since 8/2/86 to
  3949.                       ULIB.LST.
  3950.  
  3951.  
  3952.  
  3953.  
  3954.  
  3955.  
  3956.  
  3957.  
  3958.  
  3959.  
  3960.  
  3961.  
  3962.  
  3963.  
  3964.  
  3965.  
  3966.  
  3967.  
  3968.  
  3969.  
  3970.  
  3971.  
  3972.  
  3973.  
  3974.  
  3975.  
  3976.  
  3977.                                          71
  3978.  
  3979.  
  3980.  
  3981.                                DOCZ PROGRAM REFERENCE
  3982.  
  3983.  
  3984.             DOCXLU
  3985.  
  3986.                  Documentation Index File utility
  3987.  
  3988.                  Arguments
  3989.  
  3990.                       DOCXLU /e <Ref. Directory> <library>...[library]
  3991.  
  3992.                            [z_opt]
  3993.  
  3994.                            Extract library for another Documentation
  3995.  
  3996.                            Index File
  3997.  
  3998.                       DOCXLU /r [z_opt]
  3999.  
  4000.                            Repair/rebuild the Documentation Index
  4001.  
  4002.                       DOCXLU /ao=<output file> [library]...[library]
  4003.  
  4004.                            [z_opt]
  4005.  
  4006.                            Output an ASCII transport file for the
  4007.  
  4008.                            Documentation Index
  4009.  
  4010.                       DOCXLU /ai=<input file> [z_opt]
  4011.  
  4012.                            Read an ASCII transport file
  4013.  
  4014.                       DOCXLU /s[=<output file>] [z_opt]
  4015.  
  4016.                            Display DOCZ System statistics
  4017.  
  4018.                       DOCXLU /v[=<output file>] [z_opt]
  4019.  
  4020.                            Verify presence of all source files
  4021.  
  4022.                       DOCXLU /c[=<output file>] [z_opt]
  4023.  
  4024.                            Check for the presence of rogue files
  4025.  
  4026.                  Returns
  4027.  
  4028.                       EXITNORMAL          If the Documentation Index
  4029.                                      File can be opened.
  4030.  
  4031.                       EXITBAD             If DOCXLU cannot run.
  4032.  
  4033.                  Errors
  4034.  
  4035.                       (1)  to the log, if logging is enabled
  4036.  
  4037.                       (2)  to Standard Error
  4038.  
  4039.  
  4040.                                          72
  4041.  
  4042.  
  4043.  
  4044.                                DOCZ PROGRAM REFERENCE
  4045.  
  4046.  
  4047.             The DOCXLU program provides a variety of utility functions
  4048.             that allow moving your DOCZ system between the various
  4049.             operating systems on which it runs.  It also helps to
  4050.             reorganize your documentation libraries by providing a means
  4051.             to create several Documentation Index Files.
  4052.  
  4053.             The /e (extract) option is provided to allow the extraction
  4054.             of modules associated with one library to be inserted into
  4055.             another Documentation Index File.  The reference directory
  4056.             specifies the directory name containing the Documentation
  4057.             Index File to receive the new entries.  The library argument
  4058.             specifies one or more libraries to "extract."
  4059.  
  4060.             The /r (repair/rebuild) option checks the integrity of each
  4061.             field in the Index and extracts records marked for deletion.
  4062.  
  4063.             The /ao (output) option will produce an ASCII transport
  4064.             file, specified by output file, that can be read using the
  4065.             /ai (input) option on another system.  This has the affect
  4066.             of duplicating identical DOCZ libraries on more than one
  4067.             system, and those systems need not have the same hardware
  4068.             architecture.
  4069.  
  4070.             For the /ao option, If no library names are specified, all
  4071.             entries will be output.  If any library names are specified,
  4072.             then only entries for those libraries will be output.
  4073.  
  4074.             The /ai option is provided to read an ASCII transport file
  4075.             created by the /ao option of DOCXLU.  The entries gleaned
  4076.             from the transport file will be merged with the current
  4077.             Documentation Index File.  If an entry is new, it will be
  4078.             added.  If the entry already exists (module and library name
  4079.             are the same), it will replace the already existing entry.
  4080.  
  4081.             File specifications generated under one operating system may
  4082.             not be valid under another operating system.  If the source
  4083.             file name contains a directory specification, you may have
  4084.             to edit it in the ASCII transport file.  The UNIX version of
  4085.             DOCXLU will warn of this condition.
  4086.  
  4087.             The /v option initiates a check for the presence of source
  4088.             files for all modules named in the Documentation Index.  An
  4089.             optional output file may also be specified, if a print file
  4090.             is required instead of a display.  Note that this option
  4091.             does not cause the source files to be validated for properly
  4092.             formatted documentation headers.
  4093.  
  4094.             The /c option checks the default source location for the
  4095.             presence of rogue files (those that cannot be accounted for
  4096.             in the Documentation Index File).  The directory searched is
  4097.             the derivation of DOCSRC and the library name (the standard
  4098.             DOCZ default).
  4099.  
  4100.  
  4101.  
  4102.  
  4103.                                          73
  4104.  
  4105.  
  4106.  
  4107.                                DOCZ PROGRAM REFERENCE
  4108.  
  4109.  
  4110.             The /s option generates a display of DOCZ System statistics.
  4111.             This option is especially useful for analyzing the entire
  4112.             DOCZ System environment which can be especially useful when
  4113.             error conditions occur.  The /s option may be followed by an
  4114.             optional output file specification into which the statistics
  4115.             will be written instead of displayed.  The following
  4116.             statistics are displayed:
  4117.  
  4118.                  S       /no if the VMS version of DOCZ links to CMS
  4119.                       Yes
  4120.  
  4121.                  S    Total number of entries in the Documentation Index
  4122.                       File
  4123.  
  4124.                  S    Number of deleted entries in the Documentation
  4125.                       Index File
  4126.  
  4127.                  S    The directory path to the Default Source Directory
  4128.  
  4129.                  S    The directory path to the Documentation Reference
  4130.                       Directory
  4131.  
  4132.                  S    Yes/no if a Configuration File can be found
  4133.  
  4134.                  S    Comment String Masks (if specified in the
  4135.                       Configuration File)
  4136.  
  4137.                  S    Comment String Masks for file extension names (if
  4138.                       specified in the Configuration File)
  4139.  
  4140.                  S    Yes/no if error logging is enabled
  4141.  
  4142.                  S    Error logging levels that are enabled
  4143.  
  4144.                  S    The number of days error log entries are kept
  4145.  
  4146.                  S    The age of the oldest entry in the error log
  4147.  
  4148.                  S    The total number of entries in the error log
  4149.  
  4150.                  S    Any print output modification parameters (PSET
  4151.                       tokens)
  4152.  
  4153.                  S    Any PSET initialization and de-initialization
  4154.                       parameters specified
  4155.  
  4156.                  S    The system date format
  4157.  
  4158.                  S    Yes/no if an on-line help library has been
  4159.                       generated and is available
  4160.  
  4161.                  S    The number of modules in the on-line help library
  4162.  
  4163.                  S    Yes/no if MSDOS network sharing is enabled (MSDOS
  4164.                       version only)
  4165.  
  4166.  
  4167.                                          74
  4168.  
  4169.  
  4170.  
  4171.                                DOCZ PROGRAM REFERENCE
  4172.  
  4173.  
  4174.  
  4175.                  S    Yes/no if the SORT utility is found on the system
  4176.                       (it is needed by the DOC program).  VMS and UNIX
  4177.                       require the system sort, and MSDOS requires SSORT
  4178.                       provided by the DOCZ System.
  4179.  
  4180.                  S    The names of all libraries specified in the
  4181.                       Documentation Index and the number of modules in
  4182.                       each library
  4183.  
  4184.                  S    Default source location override (if any) in the
  4185.                       Configuration File
  4186.  
  4187.                  S    Version control GET commands (if any) in the
  4188.                       Configuration File
  4189.  
  4190.             For an explanation of the [z_opt] command-line option, see
  4191.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.  
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.  
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223.  
  4224.  
  4225.  
  4226.  
  4227.  
  4228.  
  4229.  
  4230.                                          75
  4231.  
  4232.  
  4233.  
  4234.                                DOCZ PROGRAM REFERENCE
  4235.  
  4236.  
  4237.             DOCXLU Examples
  4238.  
  4239.             Suppose a DOCZ library existed on a Unix system, but an
  4240.             administrator wished to provide a duplicate DOCZ system on
  4241.             an MSDOS LAN.  The administrator could use the /ao option,
  4242.             as in:
  4243.  
  4244.                  docxlu /ao=tomsdos.txt
  4245.  
  4246.             to produce and ASCII transport file on the Unix system named
  4247.             tomsdos.txt.  The administrator would then copy the file (in
  4248.             text mode) to the MSDOS network, set up the MSDOS
  4249.             environment for the DOCZ system, and copy all the source
  4250.             files containing modules to the MSDOS network.  Then use the
  4251.             /ai option, as in:
  4252.  
  4253.                  docxlu /ai=tomsdos.txt
  4254.  
  4255.             to build a Documentation Index File on the MSDOS network.
  4256.             The source files may then be copied to the requisite sub-
  4257.             directories of DOCSRC, if documentation needs to be built on
  4258.             that platform.
  4259.  
  4260.             The DOCXLU /e option strips entries out of the current
  4261.             Documentation Index File and places them in another
  4262.             Documentation Index File.  This feature could be used to
  4263.             isolate documentation for different software releases, both
  4264.             existing on the same system:  the environment variables
  4265.             would have to be appropriately modified before accessing the
  4266.             desired DOCZ library.
  4267.  
  4268.  
  4269.  
  4270.  
  4271.  
  4272.  
  4273.  
  4274.  
  4275.  
  4276.  
  4277.  
  4278.  
  4279.  
  4280.  
  4281.  
  4282.  
  4283.  
  4284.  
  4285.  
  4286.  
  4287.  
  4288.  
  4289.  
  4290.  
  4291.  
  4292.  
  4293.                                          76
  4294.  
  4295.  
  4296.  
  4297.                                DOCZ PROGRAM REFERENCE
  4298.  
  4299.  
  4300.             DOCHBLD
  4301.  
  4302.                  Generate a documentation help library
  4303.  
  4304.                  Arguments
  4305.  
  4306.                       DOCHBLD [library] [library] ... [/opt] [/opt]
  4307.  
  4308.                            options:
  4309.                       /h                            update the on-line
  4310.                                                     help library
  4311.                       /v                            VMS help library
  4312.                                                     format
  4313.                       /ao=<filename>                ASCII transport
  4314.                                                     output
  4315.                       /ai=<filename>[,filename,...] ASCII transport
  4316.                                                     input
  4317.                       /z=docref=<alternate DOCREF directory>
  4318.                       /z=docsrc=<alternate DOCSRC directory>
  4319.  
  4320.                  Returns
  4321.  
  4322.                       EXITNORMAL     If one or more modules are found
  4323.                                      and added to the help library
  4324.  
  4325.                       EXITWARN       If zero modules are found,  or any
  4326.                                      other abnormal condition
  4327.  
  4328.                       EXITBAD        If any fatal errors occur
  4329.  
  4330.                  Errors
  4331.  
  4332.                       (1)  to the log, if logging is enabled
  4333.  
  4334.                       (2)  to Standard Error
  4335.  
  4336.             DOCHBLD builds an on-line help library for the modules in
  4337.             the Documentation Index File.  It also can build a help
  4338.             library from the modules on another computer using "ASCII
  4339.             transport files."  If DOCHBLD is invoked with the /h option,
  4340.             a help library will be built for all modules in the
  4341.             Documentation Index File.  The output file, DOCHELP.HLP, is
  4342.             stored in the Reference Directory.  This file may then be
  4343.             used by the DOCHELP utility to provide on-line documentation
  4344.             and a program editor interface.
  4345.  
  4346.             An alternate format is available in the VMS version (using
  4347.             the /v option) and this file may then be processed by the
  4348.             VMS LIBRARY utility to produce a text library in a format
  4349.             that can be read by the VMS on-line HELP facility (should
  4350.             you choose to use VMS HELP instead of DOCHELP).  The output
  4351.             file will be "DOCHELP.VLP" in the current directory.
  4352.  
  4353.  
  4354.  
  4355.  
  4356.                                          77
  4357.  
  4358.  
  4359.  
  4360.                                DOCZ PROGRAM REFERENCE
  4361.  
  4362.  
  4363.             The /ao option produces an "ASCII transport file," with the
  4364.             specified filename, that may be moved to another computer
  4365.             and processed by the DOCHBLD utility (using the /ai option)
  4366.             to produce a help library on the other computer.  This
  4367.             feature allows the transportation of a help library between
  4368.             disparate computer architectures.  The /ao option excludes
  4369.             the use of the /v option.
  4370.  
  4371.             The library argument is optional and, if any libraries are
  4372.             named on the command line, only the named libraries will be
  4373.             included in the help library.  The specification of library
  4374.             names are in compatible with the /ai option.  If no library
  4375.             names are specified on the command line, DOCHBLD will
  4376.             generate a help library for all libraries.  It is good
  4377.             practice to periodically update the DOCZ Help File by
  4378.             running DOCHBLD, perhaps weekly if your libraries change
  4379.             often.
  4380.  
  4381.             The /h (update help library) option may be specified alone,
  4382.             or in conjunction with the /ao option.  This option
  4383.             signifies that the local on-line help library should be
  4384.             updated.  The /h option is provided so that (with it left
  4385.             off the command-line) Transport Files can be generated for a
  4386.             limited number of libraries.
  4387.  
  4388.             For an explanation of the [z_opt] command-line option, see
  4389.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4390.  
  4391.             A VMS command file, such as the following, generates an on-
  4392.             line help library for all modules documented in DOCZ when
  4393.             DOCHBLD is used with the /v option.
  4394.  
  4395.                  $! run the DOCHBLD utility
  4396.                  $ DOCHBLD /v
  4397.                  $! run the LIBRARY utility to generate a VMS help file
  4398.                  $ LIBRARY/HELP/CREATE DOCHELP.VLP DOCHELP
  4399.                  $! allow the VMS HELP command to find the help library
  4400.                  $ DEFINE/SYSTEM HLP$LIBRARY -
  4401.                       'F$ENVIRONMENT("DEFAULT")'DOCHELP
  4402.  
  4403.             Run the VMS HELP utility, and check for the names of the
  4404.             modules contained in the DOCZ System.
  4405.  
  4406.  
  4407.  
  4408.  
  4409.  
  4410.  
  4411.  
  4412.  
  4413.  
  4414.  
  4415.  
  4416.  
  4417.  
  4418.  
  4419.                                          78
  4420.  
  4421.  
  4422.  
  4423.                                DOCZ PROGRAM REFERENCE
  4424.  
  4425.  
  4426.             DOCHELP
  4427.  
  4428.                  Produce on line documentation help
  4429.  
  4430.                  Arguments
  4431.  
  4432.                       DOCHELP                       (interactive mode)
  4433.  
  4434.                            or
  4435.  
  4436.                       DOCHELP <module name> [/opt]       (command line
  4437.                       mode)
  4438.  
  4439.                  Returns
  4440.  
  4441.                       Nothing
  4442.  
  4443.                  Errors
  4444.  
  4445.                       to Standard Error
  4446.  
  4447.             The DOCHELP utility reads the help file generated by the
  4448.             DOCHBLD utility to provide on-line documentation for
  4449.             modules.  In the interactive mode, module names are accepted
  4450.             at the DOCHELP> prompt until [RETURN] alone is pressed.  In
  4451.             command line mode, DOCHELP is invoked with the name of a
  4452.             module on the command line.  The following information is
  4453.             stored in the help file and displayed by DOCHELP when a
  4454.             valid module name is entered:
  4455.  
  4456.                  Module name
  4457.                  Library name
  4458.                  Application keyword
  4459.                  Short description
  4460.                  Return value
  4461.                  Argument description
  4462.  
  4463.             The module name may contain the '*' wildcard which will be
  4464.             used to match one or more module names in the help library.
  4465.             The '*' is specified as a trailing character in the module
  4466.             name specification.  In this display mode, only module names
  4467.             are displayed.  For example, if "c*" is entered, all module
  4468.             names beginning with "c" are displayed.  If "*" is entered,
  4469.             all module names are displayed.  The screen will be "frozen"
  4470.             to prevent it from scrolling, and any key pressed will
  4471.             continue the display.
  4472.  
  4473.             A question mark, '?', in place of a module name displays the
  4474.             DOCHELP banner with a list of usage prompts.
  4475.  
  4476.             A description search capability is available in the
  4477.             interactive mode.  One or more keywords may be entered at
  4478.             the DOCHELP> command prompt, preceded by a slash (/)
  4479.             character.
  4480.  
  4481.  
  4482.                                          79
  4483.  
  4484.  
  4485.  
  4486.                                DOCZ PROGRAM REFERENCE
  4487.  
  4488.  
  4489.             In the following example:
  4490.  
  4491.                  DOCHELP> /lower case
  4492.  
  4493.             will search all module descriptions (without regard for
  4494.             case) and will display those containing the string, "lower
  4495.             case."  The module name and library name are also displayed.
  4496.             This feature allows easy location of modules by description.
  4497.  
  4498.             If /arg as added as an option in command line mode, only the
  4499.             arguments for the module are displayed.  This option is
  4500.             available primarily to provide a means for producing
  4501.             function prototypes for editors:  the "DOCHELP <module name>
  4502.             /arg" output can be redirected to a file and the file and
  4503.             then read by the program editor.
  4504.  
  4505.             There are two mechanisms supplied with the DOCZ System to
  4506.             extract a modules' arguments (or calling prototype) while
  4507.             you are in an editing session:
  4508.  
  4509.                  (1)  In the UNIX version, DOCHELP can be used to insert
  4510.                       a function prototype into the current document
  4511.                       under edit by entering, in command mode in the vi
  4512.                       editor:
  4513.  
  4514.                            :r !dochelp <module name> -arg
  4515.  
  4516.                       The function prototype for the module name will be
  4517.                       inserted into the text at the current cursor
  4518.                       position.
  4519.  
  4520.                  (2)  In the MSDOS version, if you are using the
  4521.                       BRIEF editor, The DOCZ distribution includes
  4522.                       the source code for a BRIEF macro.  Licensed
  4523.                       BRIEF users only need compile the macro,
  4524.                       DOCHELP.M, and place the compiled macro in
  4525.                       their BRIEF macro directory.  The macro is
  4526.                       invoked from the BRIEF command mode by
  4527.                       entering:
  4528.  
  4529.                            dochelp <module name>
  4530.  
  4531.                       The function prototype for the module name will be
  4532.                       inserted into the text at the current cursor
  4533.                       position.
  4534.  
  4535.  
  4536.  
  4537.  
  4538.  
  4539.  
  4540.  
  4541.  
  4542.  
  4543.  
  4544.  
  4545.                                          80
  4546.  
  4547.  
  4548.  
  4549.                                DOCZ PROGRAM REFERENCE
  4550.  
  4551.  
  4552.             DOCXLED
  4553.  
  4554.                  Examine/search/modify the Documentation Index File
  4555.  
  4556.                  Arguments
  4557.  
  4558.                       DOCXLED [z_opt]
  4559.  
  4560.                  Returns
  4561.  
  4562.                       Nothing
  4563.  
  4564.                  Errors
  4565.  
  4566.                            to the log, if logging is enabled
  4567.                       (1)
  4568.  
  4569.                            to Standard Error
  4570.                       (2)
  4571.  
  4572.             The DOCXLED utility provides the means to examine and modify
  4573.             records in the Documentation Index File.  Each of the
  4574.             following fields in each record may be modified using the
  4575.             primitive screen editor in the DOCXLED utility:
  4576.  
  4577.                  Library name
  4578.                  Module name
  4579.                  Source file specification
  4580.                  Last modification time
  4581.                  Last modification date
  4582.                  Introduction date
  4583.                  Delete/undelete record
  4584.  
  4585.  
  4586.  
  4587.  
  4588.  
  4589.  
  4590.  
  4591.  
  4592.  
  4593.  
  4594.  
  4595.  
  4596.  
  4597.  
  4598.  
  4599.  
  4600.  
  4601.  
  4602.  
  4603.  
  4604.  
  4605.  
  4606.  
  4607.  
  4608.  
  4609.  
  4610.                                          81
  4611.  
  4612.  
  4613.  
  4614.                                DOCZ PROGRAM REFERENCE
  4615.  
  4616.  
  4617.             The following is a display produced by the DOCXLED program:
  4618.  
  4619.                  **************************************************
  4620.  
  4621.                        Entry Number: 0
  4622.                        Library name: DOCZ
  4623.                         Module name: DOC
  4624.                            Location: doc.c
  4625.                   Modification date: 12/11/89
  4626.                   Modification time: 22:15:50
  4627.                   Introduction date: 07/07/87
  4628.                      Deleted record? N
  4629.  
  4630.                  Records=566, Search direction=FORWARD, Search library=*
  4631.  
  4632.                  **************************************************
  4633.  
  4634.                  +) Next, -) Previous, B) Begin, Z) End, S) Set Rec. No.
  4635.                  F) Find, Q) Quit, D) Direction, N) Name library, E)
  4636.                  Edit, U) Update
  4637.                  Press choice:
  4638.  
  4639.             When the DOCXLED program is run, the first entry in the
  4640.             Documentation Index File is displayed, and the user is
  4641.             placed in the command mode.  Any entry that is displayed on
  4642.             the screen may be edited by pressing E, which places the
  4643.             user in the editing mode.
  4644.  
  4645.             For an explanation of the [z_opt] command-line option, see
  4646.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4647.  
  4648.  
  4649.  
  4650.  
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.  
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.  
  4665.  
  4666.  
  4667.  
  4668.  
  4669.  
  4670.  
  4671.  
  4672.  
  4673.                                          82
  4674.  
  4675.  
  4676.  
  4677.                                DOCZ PROGRAM REFERENCE
  4678.  
  4679.  
  4680.             In the command mode, you may select any of the following
  4681.             options:
  4682.  
  4683.                  Q    Quit DOCXLED utility
  4684.  
  4685.                  +    Display next entry
  4686.  
  4687.                  -    Display previous entry
  4688.  
  4689.                  B    Display first (beginning) entry in file
  4690.  
  4691.                  Z    Display last entry in file
  4692.  
  4693.                  F    Find a module name you will be prompted for.
  4694.                       During the search, an abort key (^\) can abort the
  4695.                       search.
  4696.  
  4697.                  D    Change the direction of search
  4698.  
  4699.                  N    Name a new library.  '*' signifies that all
  4700.                       library names will be included in the search.
  4701.  
  4702.                  E    Enter editing mode on the current record
  4703.  
  4704.                  U    Update an edited record
  4705.  
  4706.                  S      t the current record number
  4707.                       Se
  4708.  
  4709.             While in the editing mode, the following function keys will
  4710.             be recognized:
  4711.  
  4712.                  Key                 Action
  4713.  
  4714.                  Control-E           Previous field
  4715.                  RETURN              Next field
  4716.                  Control-K           Abort
  4717.                  Control-Z           Exit
  4718.                  BACKSPACE, DELETE   Delete character
  4719.                  Control-U           Clear current field
  4720.  
  4721.             A terminal independent primitive editor is utilized in the
  4722.             editing mode to allow modifications to the Documentation
  4723.             Index File records.  When the cursor is in a field, the
  4724.             maximum width of the field will be displayed filled with the
  4725.             underscore character.
  4726.  
  4727.             When editing mode is exited to command mode, the entry will
  4728.             be updated in the Documentation Index File if you press U.
  4729.             If you move to another entry without pressing U, your edits
  4730.             will be lost.
  4731.  
  4732.             DOCXLED does not allow new entries, it only allows
  4733.             modification of entries previously added by DOCXL.  It does,
  4734.             however, allow the marking of an entry for deletion.  A
  4735.  
  4736.  
  4737.                                          83
  4738.  
  4739.  
  4740.  
  4741.                                DOCZ PROGRAM REFERENCE
  4742.  
  4743.  
  4744.             record marked for deletion may be overwritten by the next
  4745.             new entry applied to the Documentation Index File, or will
  4746.             be removed entirely by the "rebuild" option of DOCXL.
  4747.  
  4748.             Specifying a library name with the N option causes
  4749.             subsequent searches to scan only for the  library name you
  4750.             specify.  To return to a global search, select N, and enter
  4751.             *.
  4752.  
  4753.  
  4754.  
  4755.  
  4756.  
  4757.  
  4758.  
  4759.  
  4760.  
  4761.  
  4762.  
  4763.  
  4764.  
  4765.  
  4766.  
  4767.  
  4768.  
  4769.  
  4770.  
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.  
  4779.  
  4780.  
  4781.  
  4782.  
  4783.  
  4784.  
  4785.  
  4786.  
  4787.  
  4788.  
  4789.  
  4790.  
  4791.  
  4792.  
  4793.  
  4794.  
  4795.  
  4796.  
  4797.  
  4798.  
  4799.  
  4800.                                          84
  4801.  
  4802.  
  4803.  
  4804.                                DOCZ PROGRAM REFERENCE
  4805.  
  4806.  
  4807.             DOCGET
  4808.  
  4809.                  Extract a field from a documentation header
  4810.  
  4811.                  Arguments
  4812.  
  4813.                       DOCGET <module> <source> <parameter> [/o=<output>]
  4814.  
  4815.                  Returns
  4816.  
  4817.                       Nothing
  4818.  
  4819.                  Errors
  4820.  
  4821.                       to Standard Error
  4822.  
  4823.             The DOCGET utility extracts a single field for a module from
  4824.             a documentation header specified by the DOCZ header
  4825.             parameter.  Only the first 3 characters of parameter will be
  4826.             used, and case is ignored.  The module name must be
  4827.             specified as multiple modules may be contained in a single
  4828.             source file.  If an optional output file is specified, it
  4829.             will be appended to.
  4830.  
  4831.             This utility is provided to facilitate automation of the
  4832.             DOCZ System.
  4833.  
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839.  
  4840.  
  4841.  
  4842.  
  4843.  
  4844.  
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.  
  4851.  
  4852.  
  4853.  
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.  
  4861.  
  4862.  
  4863.                                          85
  4864.  
  4865.  
  4866.  
  4867.                                DOCZ PROGRAM REFERENCE
  4868.  
  4869.  
  4870.             DOCLIS
  4871.  
  4872.                  Find all DOCZ modules in a source file
  4873.  
  4874.                  Arguments
  4875.  
  4876.                  DOCLIS <a.f.n.> [/o=<output file>]
  4877.  
  4878.                  DOCLIS <a.f.n.> [z_opt] /c[=<command> [arg 4] [arg 5]
  4879.  
  4880.                  ...
  4881.  
  4882.                  DOCLIS <a.f.n.> [z_opt] /e=<command> [arg 4] [arg 5]
  4883.  
  4884.                  ...
  4885.  
  4886.                  Returns
  4887.  
  4888.                       Nothing
  4889.  
  4890.                  Errors
  4891.  
  4892.                       to Standard Error
  4893.  
  4894.             The DOCLIS utility scans source file(s) for the DOCZ
  4895.             header(s) it contains and extracts the library name, module
  4896.             name(s), file name, and supported platform names.  The
  4897.             ambiguous file name, a.f.n., may be matched to zero or more
  4898.             files in one or more directories.  The output is normally
  4899.             sent to the screen, but a file may be selected for output by
  4900.             specifying the file name with the /o option.
  4901.  
  4902.             UNIX version note:  be sure to quote ambiguous file names
  4903.             containing wildcards, so that the DOCLIS program will
  4904.             perform the wildcard expansion instead of the Shell.
  4905.  
  4906.             If the /c option is specified, the DOCLIS utility runs DOCXL
  4907.             for every module found in the specified source file(s), thus
  4908.             automatically updating the Documentation Index File.  A
  4909.             post-processing command may also be specified, with the /c
  4910.             option switch:  the command may be a command file or program
  4911.             to which will be passed (1) the library name, (2) the module
  4912.             name, (3) the source file name, and any additional arguments
  4913.             on the DOCLIS command line.  The /e option is an alternate
  4914.             form of the /c option, specifying that you do not wish to
  4915.             run DOCXL for each module; only the specified command.
  4916.  
  4917.             You may wish to use the post-processing command to update
  4918.             your version control library with a module added to the
  4919.             Documentation Index File, or to relocate the file to the
  4920.             DOCZ source directories.  The EXAMPLES section contain
  4921.             command files illustrating this usage.
  4922.  
  4923.  
  4924.  
  4925.  
  4926.                                          86
  4927.  
  4928.  
  4929.  
  4930.                                DOCZ PROGRAM REFERENCE
  4931.  
  4932.  
  4933.             For an explanation of the [z_opt] command-line option, see
  4934.             "SELECTING OPTIONS:  Specifying Command Line Options."
  4935.  
  4936.  
  4937.  
  4938.  
  4939.  
  4940.  
  4941.  
  4942.  
  4943.  
  4944.  
  4945.  
  4946.  
  4947.  
  4948.  
  4949.  
  4950.  
  4951.  
  4952.  
  4953.  
  4954.  
  4955.  
  4956.  
  4957.  
  4958.  
  4959.  
  4960.  
  4961.  
  4962.  
  4963.  
  4964.  
  4965.  
  4966.  
  4967.  
  4968.  
  4969.  
  4970.  
  4971.  
  4972.  
  4973.  
  4974.  
  4975.  
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982.  
  4983.  
  4984.  
  4985.  
  4986.  
  4987.  
  4988.  
  4989.                                          87
  4990.  
  4991.  
  4992.  
  4993.                                DOCZ PROGRAM REFERENCE
  4994.  
  4995.  
  4996.             DOCLOG
  4997.  
  4998.                  Examine/Search the DOCZ transaction log file
  4999.  
  5000.                  Arguments
  5001.  
  5002.                       DOCLOG [z_opt]
  5003.  
  5004.                  Returns
  5005.  
  5006.                       Nothing
  5007.  
  5008.                  Errors
  5009.  
  5010.                       to Standard Error
  5011.  
  5012.             The DOCLOG program allows scanning of the DOCZ
  5013.             transaction/error log.  When DOCLOG is invoked, the last
  5014.             entry in the log will be displayed initially.  The following
  5015.             commands may be used to navigate through the log:
  5016.  
  5017.                  +    forward   display the next entry
  5018.                  -    reverse   display the previous entry
  5019.                  Q    Quit      quit the DOCLOG program
  5020.                  L    Last      display the last entry
  5021.                  F    First     display the first entry
  5022.                  N    Ent. No.  display the entry number prompted for
  5023.                  R    Report    generate a report
  5024.  
  5025.             The following is an example of a display for a log entry:
  5026.  
  5027.                  Entry Number: 2013/3259
  5028.                       Program: DOCXL
  5029.                     Date/Time: Thu Jan 24 21:44:55 1989 (6 days ago)
  5030.                       User ID: toolz:todd
  5031.                    Process ID: 6231
  5032.                   Error Level: WARNING
  5033.                       Message: DOCHLP not found
  5034.                              :
  5035.                  (+)forward, (-)reverse, (Q)Quit, (L)Last, (F)First,
  5036.                  (N)Ent.No., (R)Report
  5037.                  Press choice:
  5038.  
  5039.             The Entry Number label displays the entry number of the
  5040.             current entry being viewed, and the total number of entries
  5041.             in the log.  The Program is the DOCZ System program that
  5042.             produced the log entries (not all DOCZ programs write
  5043.             entries to the log).  The Date/Time is the date (in the
  5044.             current date format) and time that the entry was added to
  5045.             the log.  The User ID is the I.D. (including nodename) of
  5046.             the User who was running the program that produced the log
  5047.             entry.  The User ID will contain both the node name and the
  5048.             username (see "SELECTING OPTIONS" for the MSDOS version).
  5049.             The Process ID is the I.D. of the process owning the program
  5050.  
  5051.  
  5052.                                          88
  5053.  
  5054.  
  5055.  
  5056.                                DOCZ PROGRAM REFERENCE
  5057.  
  5058.  
  5059.             that produced the log entry.  The Error Level is the
  5060.             severity of the message (Informational, Warning, Error, or
  5061.             Fatal).  And, Message is the message describing the log
  5062.             entry.
  5063.  
  5064.             The Report facility provided by DOCLOG allows one ore more
  5065.             log entries to be "dumped" to a file in the same format as
  5066.             they are displayed on the screen.  When R is selected, you
  5067.             will be prompted for a starting and ending entry number, as
  5068.             well as the name of the file to which you wish to write the
  5069.             report.
  5070.  
  5071.             Note: logging must be enabled for the transaction log to
  5072.             contain any entries.  See the section on "OTHER FEATURES,
  5073.             TRANSACTION LOGGING" for information on enabling logging.
  5074.  
  5075.             For an explanation of the [z_opt] command-line option, see
  5076.             "SELECTING OPTIONS:  Specifying Command Line Options."
  5077.  
  5078.  
  5079.  
  5080.  
  5081.  
  5082.  
  5083.  
  5084.  
  5085.  
  5086.  
  5087.  
  5088.  
  5089.  
  5090.  
  5091.  
  5092.  
  5093.  
  5094.  
  5095.  
  5096.  
  5097.  
  5098.  
  5099.  
  5100.  
  5101.  
  5102.  
  5103.  
  5104.  
  5105.  
  5106.  
  5107.  
  5108.  
  5109.  
  5110.  
  5111.  
  5112.  
  5113.  
  5114.  
  5115.                                          89
  5116.  
  5117.  
  5118.  
  5119.                                DOCZ PROGRAM REFERENCE
  5120.  
  5121.  
  5122.             DOCMAN
  5123.  
  5124.                  View the on-line DOCZ User Manual
  5125.  
  5126.                  Arguments
  5127.  
  5128.                       DOCMAN [/m]
  5129.  
  5130.                  Returns
  5131.  
  5132.                       Nothing
  5133.  
  5134.                  Errors
  5135.  
  5136.                       to screen
  5137.  
  5138.             The DOCMAN program is an interactive on-line documentation
  5139.             viewing utility for the DOCZ System.  DOCMAN allows the user
  5140.             to pick a subject from a subject menu for which one or more
  5141.             pages of manual text will be displayed.  The subject menu
  5142.             features all major DOCZ topics.  Menu items are selected by
  5143.             entering the subject, but only as many characters required
  5144.             to make the subject unique are required.  As the text for a
  5145.             subject is displayed, the user may scroll backwards and
  5146.             forwards through the text using the scrolling keys displayed
  5147.             on the screen (specific keys may differ between platforms).
  5148.  
  5149.             The /m option is provided on those platforms on which a
  5150.             color display is implemented.  The use of color may be
  5151.             defeated by use of the /m monochrome option.
  5152.  
  5153.  
  5154.  
  5155.  
  5156.  
  5157.  
  5158.  
  5159.  
  5160.  
  5161.  
  5162.  
  5163.  
  5164.  
  5165.  
  5166.  
  5167.  
  5168.  
  5169.  
  5170.  
  5171.  
  5172.  
  5173.  
  5174.  
  5175.  
  5176.  
  5177.  
  5178.                                          90
  5179.  
  5180.  
  5181.  
  5182.                                DOCZ PROGRAM REFERENCE
  5183.  
  5184.  
  5185.             DOCLEARN
  5186.  
  5187.                  Run the DOCZ Tutorial
  5188.  
  5189.                  Arguments
  5190.  
  5191.                       DOCLEARN [/m]
  5192.  
  5193.                  Returns
  5194.  
  5195.                       Nothing
  5196.  
  5197.                  Errors
  5198.  
  5199.                       to screen
  5200.  
  5201.             The DOCLEARN program is an interactive on-line tutorial for
  5202.             the DOCZ System.  DOCLEARN allows the user to pick a subject
  5203.             from a subject menu for which one or more pages of tutorial
  5204.             text will be displayed.  The subject menu features all major
  5205.             DOCZ topics.  Menu items are selected by entering the
  5206.             subject, but only as many characters required to make the
  5207.             subject unique are required.  As the text for a subject is
  5208.             displayed, the user may scroll backwards and forwards
  5209.             through the text using the scrolling keys displayed on the
  5210.             screen (specific keys may differ between platforms).
  5211.  
  5212.             The /m option is provided on those platforms on which a
  5213.             color display is implemented.  The use of color may be
  5214.             defeated by use of the /m monochrome option.
  5215.  
  5216.  
  5217.  
  5218.  
  5219.  
  5220.  
  5221.  
  5222.  
  5223.  
  5224.  
  5225.  
  5226.  
  5227.  
  5228.  
  5229.  
  5230.  
  5231.  
  5232.  
  5233.  
  5234.  
  5235.  
  5236.  
  5237.  
  5238.  
  5239.  
  5240.  
  5241.                                          91
  5242.  
  5243.  
  5244.  
  5245.  
  5246.                               DOCZ UTILITIES REFERENCE
  5247.  
  5248.  
  5249.             PSET
  5250.  
  5251.                  Maintain/use printer interface database
  5252.  
  5253.                  Arguments
  5254.  
  5255.                       PSET <token> [token] ... [token]
  5256.  
  5257.                            Send output to default printer
  5258.  
  5259.                       PSET <token> [token] [/D=nnnnn]
  5260.  
  5261.                            Send output to printer/queue nnnnn
  5262.  
  5263.                       PSET [tokens] /O
  5264.  
  5265.                            Send output to standard output
  5266.  
  5267.                       PSET [tokens] /O=nnnnn
  5268.  
  5269.                            Append output to file nnnnn
  5270.  
  5271.                       PSET ?
  5272.  
  5273.                            Display all tokens
  5274.  
  5275.                       PSET /E
  5276.  
  5277.                            Edit the printer sequences
  5278.  
  5279.                       PSET /U=nnnnn
  5280.  
  5281.                            Send dump of all sequences to file nnnnn
  5282.  
  5283.                       PSET [token] [/T=ww/hh]
  5284.  
  5285.                            Print test pattern, ww width/hh height
  5286.  
  5287.                       PSET /AI=<input ASCII transport file>
  5288.  
  5289.                            Read and merge a PSET database transported
  5290.  
  5291.                            from another system
  5292.  
  5293.                       PSET /AO=<output ASCII transport file>
  5294.  
  5295.                            Output a transport file containing the PSET
  5296.  
  5297.                            database
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304.  
  5305.                                          93
  5306.  
  5307.  
  5308.  
  5309.                               DOCZ UTILITIES REFERENCE
  5310.  
  5311.  
  5312.                  Returns
  5313.  
  5314.                       Nothing
  5315.  
  5316.                  Errors
  5317.  
  5318.                       to Standard Error
  5319.  
  5320.             The PSET utility provides a general-purpose printer feature
  5321.             selection mechanism and a program interface to a printer
  5322.             control sequence data base.  Printer features are identified
  5323.             by a seven-character token.  Each token is accompanied by a
  5324.             feature description, and the actual escape sequence required
  5325.             by the printer.  Tokens are added to the PSET database,
  5326.             PSET.DAT, using the PSET editor, or by running the PCODE
  5327.             utility.
  5328.  
  5329.             If invoked with ? as the only argument, all installed
  5330.             sequences are displayed by token name and description (the ?
  5331.             must be quoted in the UNIX version).  If one or more tokens
  5332.             are passed on the command line, the corresponding sequences
  5333.             are transmitted to the default printer.  If PSET is invoked
  5334.             with no arguments, a usage prompt is displayed.
  5335.  
  5336.             The /d option is used to specify a printer or queue other
  5337.             than the default.
  5338.  
  5339.             The /o option is used to specify the output device for
  5340.             output or a file.
  5341.  
  5342.             The /u option performs a displayable ASCII dump of all
  5343.             installed sequences.  If no name is specified after the /u
  5344.             option, the default printer is used for output.
  5345.  
  5346.             The /t option sends a test pattern to the output device with
  5347.             ww characters per line and hh lines per page.  If no
  5348.             arguments are specified for the /t option (PSET /T), a 80 x
  5349.             66 pattern is generated.
  5350.  
  5351.             If the /e option is specified, the PSET interactive editor
  5352.             is invoked.  The PSET editor allows the user to install
  5353.             and/or modify sequences, and it utilizes help messages to
  5354.             guide the user through installation.  If no previous
  5355.             PSET.DAT exists on your system:
  5356.  
  5357.                  MSDOS:    in the search path
  5358.                  UNIX:          in the search path
  5359.                  VMS:      in DOCDAT
  5360.  
  5361.             then PSET will create the file in the current directory.
  5362.             Once the PSET file has been created, you must move PSET.DAT
  5363.             to the directory listed above.  The current maximum number
  5364.             of sequences that PSET can accommodate is 127.  As sequences
  5365.  
  5366.  
  5367.  
  5368.                                          94
  5369.  
  5370.  
  5371.  
  5372.                               DOCZ UTILITIES REFERENCE
  5373.  
  5374.  
  5375.             are added, insure that consecutive sequences are installed,
  5376.             i.e. no consecutive sequence numbers may be uninstalled.
  5377.  
  5378.             Operation of the PSET editor is self documenting and will
  5379.             not be further documented here.
  5380.  
  5381.             The /ao option will cause the PSET program to produce an
  5382.             ASCII transport file under the name specified.  This file
  5383.             may be transported to another system to be read by PSET
  5384.             using the /ai option.  On the system using a transport file
  5385.             as input, a check is made in the local PSET database for
  5386.             duplicate tokens in the transport file, and, if a duplicate
  5387.             is found, the token from the transport file is ignored.
  5388.  
  5389.  
  5390.  
  5391.  
  5392.  
  5393.  
  5394.  
  5395.  
  5396.  
  5397.  
  5398.  
  5399.  
  5400.  
  5401.  
  5402.  
  5403.  
  5404.  
  5405.  
  5406.  
  5407.  
  5408.  
  5409.  
  5410.  
  5411.  
  5412.  
  5413.  
  5414.  
  5415.  
  5416.  
  5417.  
  5418.  
  5419.  
  5420.  
  5421.  
  5422.  
  5423.  
  5424.  
  5425.  
  5426.  
  5427.  
  5428.  
  5429.  
  5430.  
  5431.                                          95
  5432.  
  5433.  
  5434.  
  5435.                               DOCZ UTILITIES REFERENCE
  5436.  
  5437.  
  5438.             For tokens specified in the PSET printer database:
  5439.  
  5440.                  S    The maximum token length is 7 characters, feature
  5441.                       description is 31, and output sequence is 17.
  5442.  
  5443.                  S    Tokens that begin with the underscore character
  5444.                       ('_') are reserved for use by Software Toolz.
  5445.                       utilities.
  5446.  
  5447.                  S    Printer sequences may not contain ASCII NULs (try
  5448.                       hex 80 instead).  If the sequence MUST contain a
  5449.                       NUL character, it cannot be supported by this
  5450.                       program.
  5451.  
  5452.             See also the PCODE utility.
  5453.  
  5454.             Note that long search paths or directories in your search
  5455.             path that contain many files may cause disk thrashing
  5456.             whenever the PSET reference file is needed (as when DOC is
  5457.             run).
  5458.  
  5459.  
  5460.  
  5461.  
  5462.  
  5463.  
  5464.  
  5465.  
  5466.  
  5467.  
  5468.  
  5469.  
  5470.  
  5471.  
  5472.  
  5473.  
  5474.  
  5475.  
  5476.  
  5477.  
  5478.  
  5479.  
  5480.  
  5481.  
  5482.  
  5483.  
  5484.  
  5485.  
  5486.  
  5487.  
  5488.  
  5489.  
  5490.  
  5491.  
  5492.  
  5493.  
  5494.                                          96
  5495.  
  5496.  
  5497.  
  5498.                               DOCZ UTILITIES REFERENCE
  5499.  
  5500.  
  5501.             PCODE
  5502.  
  5503.                  Install the PSET database for a particular printer
  5504.  
  5505.                  Arguments
  5506.  
  5507.                       PCODE [directory for PCODE.DAT]
  5508.  
  5509.                  Returns
  5510.  
  5511.                       Nothing
  5512.  
  5513.                  Errors
  5514.  
  5515.                       to Standard Error
  5516.  
  5517.             The PCODE utility provides the printer interface utility,
  5518.             PSET, with a set of features for many popular printers.
  5519.  
  5520.             If PCODE.DAT is not in the current directory when PCODE is
  5521.             run, the directory containing PCODE.DAT must be passed on
  5522.             the command line.  PCODE.DAT is a text data file containing
  5523.             the printer database for a number of popular printers.  This
  5524.             program is interactive and menu-driven.
  5525.  
  5526.             The features that PCODE currently supports:
  5527.  
  5528.                  SET                 set printer
  5529.                  RESET               reset printer
  5530.                  17 CPI              17 characters per inch
  5531.                  10 CPI              10 characters per inch
  5532.                  12 CPI              12 characters per inch
  5533.                  8 LPI               8 lines per inch
  5534.                  6 LPI               6 lines per inch
  5535.                  DOUBLE WIDTH ON     enter double width
  5536.                  DOUBLE WIDTH OFF    exit double width
  5537.                  BOLD ON             bold on
  5538.                  BOLD OFF            bold off
  5539.                  UNDERLINE ON        underline on
  5540.                  UNDERLINE OFF       underline off
  5541.                  DOUBLE STRIKE ON    double strike on
  5542.                  DOUBLE STRIKE OFF   double strike off
  5543.                  ITALICS ON          italics on
  5544.                  ITALICS OFF         italics off
  5545.                  SHADOW PRINT ON     shadow print on
  5546.                  SHADOW PRINT OFF    shadow print off
  5547.  
  5548.  
  5549.  
  5550.  
  5551.  
  5552.  
  5553.  
  5554.  
  5555.  
  5556.  
  5557.                                          97
  5558.  
  5559.  
  5560.  
  5561.                               DOCZ UTILITIES REFERENCE
  5562.  
  5563.  
  5564.             DOCZ currently uses only BOLD and UNDERLINE attributes when
  5565.             formatting documentation.  Future versions of DOCZ may
  5566.             incorporate additional character attributes.
  5567.  
  5568.                  S    beware that some printers do not allow certain
  5569.                       combinations of attributes.
  5570.  
  5571.                  S    when updated by PCODE, PSET.DAT does not need to
  5572.                       reside in the current directory:
  5573.  
  5574.                       MSDOS and UNIX versions:  the environment PATH
  5575.                       will be searched for PSET.DAT.
  5576.  
  5577.                       VMS version:  PSET.DAT must reside in the data
  5578.                       directory, pointed to by DOCDAT.
  5579.  
  5580.             The PCODE utility allows the selection of character
  5581.             attributes from the printer database reference file,
  5582.             PCODE.DAT, which is supplied with the DOCZ distribution.
  5583.             The user can select from a numbered list of printers by
  5584.             specifying the number in the list or the first unique
  5585.             characters of the name in the list.  If the list is too
  5586.             large to display on one screen, it will be frozen until the
  5587.             user presses [RETURN] or chooses a printer.
  5588.  
  5589.             Once a printer has been chosen, installation is then
  5590.             confirmed by the user, and the required character attributes
  5591.             are installed in the printer database file, PSET.DAT.  The
  5592.             installation for some printers may produce a "Feature not
  5593.             provided" warning message, but unless the feature is BOLD
  5594.             ON, BOLD OFF, UNDERLINE ON, or UNDERLINE OFF, the warning
  5595.             may be ignored.
  5596.  
  5597.             Other printer features are provided with the printer
  5598.             database reference file, and these features may be invoked
  5599.             by specifying their tokens as initialization sequences in
  5600.             the Configuration File, DOCZ.CFG.  The PSET utility can be
  5601.             used to examine the sequences installed in the printer
  5602.             database.  Tokens with names starting with the underscore
  5603.             character (_) are installed with the PCODE utility.
  5604.  
  5605.             The PCODE utility can also optionally send a test pattern to
  5606.             the attached printer using the sequences installed by the
  5607.             user.  The PCODE.DAT file need remain on the system only if
  5608.             the user wishes to reinstall the printer database with a new
  5609.             printer from the printer database reference file.
  5610.  
  5611.  
  5612.  
  5613.  
  5614.  
  5615.  
  5616.  
  5617.  
  5618.  
  5619.  
  5620.                                          98
  5621.  
  5622.  
  5623.  
  5624.                               DOCZ UTILITIES REFERENCE
  5625.  
  5626.  
  5627.             CALCDATE
  5628.  
  5629.                  Display current date in local date format
  5630.  
  5631.                  Arguments
  5632.  
  5633.                       calcdate [date] [/o=output file] [+/- days]
  5634.  
  5635.                  Returns
  5636.  
  5637.                       Nothing
  5638.  
  5639.                  Errors
  5640.  
  5641.                       to Standard Error
  5642.  
  5643.             The calcdate utility produces the current date in the local
  5644.             date format utilized by the DOCZ System for use in date
  5645.             comparisons.  The display screen is used for output, unless
  5646.             an optional output file is specified.  If a valid date is
  5647.             passed on the command line, an optional negative or positive
  5648.             offset may be specified to apply to the specified date.  If
  5649.             a negative or positive offset is specified with no date, it
  5650.             will be applied to the current date before is displayed.
  5651.  
  5652.                  Examples
  5653.  
  5654.                       calcdate
  5655.  
  5656.                            display today's date
  5657.  
  5658.                       calcdate +1
  5659.  
  5660.                            display tomorrow's date
  5661.  
  5662.                       calcdate -5
  5663.  
  5664.                            display the date five days ago
  5665.  
  5666.                       calcdate 7/8/89 +10
  5667.  
  5668.                            display the date ten days past 7/8/89
  5669.  
  5670.             Note that the calcdate utility uses the date format
  5671.             established by the System Manager for the DOCZ System.  See
  5672.             the section on Date Formats for more information.  Also, see
  5673.             the docrevs.sh example Shell script for an example of the
  5674.             usage of the calcdate utility.
  5675.  
  5676.  
  5677.  
  5678.  
  5679.  
  5680.  
  5681.  
  5682.  
  5683.                                          99
  5684.  
  5685.  
  5686.  
  5687.                               DOCZ UTILITIES REFERENCE
  5688.  
  5689.  
  5690.             REFORMAT
  5691.  
  5692.  
  5693.                  Reformat a text data file into print image
  5694.  
  5695.                  Arguments
  5696.  
  5697.                       reformat <input file> <output file> [opt]
  5698.                            Options:
  5699.                            /s=<width>     Column width separator size
  5700.                            /jr       Justify right
  5701.                            /jc       Justify center
  5702.                            /t        Use TABs to align
  5703.  
  5704.                  Returns
  5705.  
  5706.                       EXITNORMAL on success, EXITBAD if options are not
  5707.                       properly specified or files cannot be opened.
  5708.  
  5709.                  Errors
  5710.  
  5711.                       to Standard Error
  5712.  
  5713.             The REFORMAT utility takes text data files and reformats
  5714.             into columnar output for printing.  Text data files are a
  5715.             common format to most DOCZ programs and utilities.  The
  5716.             REFORMAT utility allows those files to be printed in a more
  5717.             readable fashion.
  5718.  
  5719.             The column width will be determined by the widest field in
  5720.             the column.  The maximum number of columns is 32.  Options
  5721.             are:
  5722.  
  5723.                  /s=<width>
  5724.  
  5725.                       Instead of 1 + the maximum field size, use <width>
  5726.                       + the maximum field size as the column separator
  5727.                       width
  5728.  
  5729.                  /jr
  5730.  
  5731.                       Use right justification on the columns instead of
  5732.                       left justification (the default)
  5733.  
  5734.                  /jc
  5735.  
  5736.                       Use centering justification on the columns instead
  5737.                       of left justification (the default)
  5738.  
  5739.                  /t
  5740.  
  5741.                       Use TAB characters (instead of spaces) to left
  5742.                       justify the columns
  5743.  
  5744.  
  5745.  
  5746.                                          100
  5747.  
  5748.  
  5749.  
  5750.                               DOCZ UTILITIES REFERENCE
  5751.  
  5752.  
  5753.             The default column width is one plus the width of the widest
  5754.             field in that column; this may be overridden with the /s
  5755.             option.  Left justification is the default and may be
  5756.             overridden by /jr and /jc.  The /s option will work in
  5757.             conjunction with /jr and /jc, but not with /t, which is the
  5758.             option to left-justify the columns using TABs.
  5759.  
  5760.  
  5761.  
  5762.  
  5763.  
  5764.  
  5765.  
  5766.  
  5767.  
  5768.  
  5769.  
  5770.  
  5771.  
  5772.  
  5773.  
  5774.  
  5775.  
  5776.  
  5777.  
  5778.  
  5779.  
  5780.  
  5781.  
  5782.  
  5783.  
  5784.  
  5785.  
  5786.  
  5787.  
  5788.  
  5789.  
  5790.  
  5791.  
  5792.  
  5793.  
  5794.  
  5795.  
  5796.  
  5797.  
  5798.  
  5799.  
  5800.  
  5801.  
  5802.  
  5803.  
  5804.  
  5805.  
  5806.  
  5807.  
  5808.  
  5809.                                          101
  5810.  
  5811.  
  5812.  
  5813.                               DOCZ UTILITIES REFERENCE
  5814.  
  5815.  
  5816.             FILLS
  5817.  
  5818.  
  5819.                  See if a file is space-filled or tab-filled
  5820.  
  5821.                  Arguments
  5822.  
  5823.                       FILLS <a.f.n.> [a.f.n.] ... [a.f.n.]
  5824.  
  5825.                  Returns
  5826.  
  5827.                       Nothing
  5828.  
  5829.                  Errors
  5830.  
  5831.                       to Standard Error
  5832.  
  5833.             The FILLS utility views the leading characters of lines in
  5834.             text files and determines whether they are TABs or SPACEs.
  5835.  
  5836.  
  5837.  
  5838.  
  5839.  
  5840.  
  5841.  
  5842.  
  5843.  
  5844.  
  5845.  
  5846.  
  5847.  
  5848.  
  5849.  
  5850.  
  5851.  
  5852.  
  5853.  
  5854.  
  5855.  
  5856.  
  5857.  
  5858.  
  5859.  
  5860.  
  5861.  
  5862.  
  5863.  
  5864.  
  5865.  
  5866.  
  5867.  
  5868.  
  5869.  
  5870.  
  5871.  
  5872.                                          102
  5873.  
  5874.  
  5875.  
  5876.                               DOCZ UTILITIES REFERENCE
  5877.  
  5878.  
  5879.             DETAB
  5880.  
  5881.  
  5882.                  Expand TAB characters to spaces
  5883.  
  5884.                  Arguments
  5885.  
  5886.                       DETAB <a.f.n.> [a.f.n.] [a.f.n.] ... [/tab stop]
  5887.  
  5888.                  Returns
  5889.  
  5890.                       Nothing
  5891.  
  5892.                  Errors
  5893.  
  5894.                       to Standard Error
  5895.  
  5896.             The DETAB utility will expand all of the ASCII TAB
  5897.             characters in a file to a pre-determined number of spaces.
  5898.             The default number of spaces to expand is 8, but any number
  5899.             can be optionally specified.
  5900.  
  5901.  
  5902.  
  5903.  
  5904.  
  5905.  
  5906.  
  5907.  
  5908.  
  5909.  
  5910.  
  5911.  
  5912.  
  5913.  
  5914.  
  5915.  
  5916.  
  5917.  
  5918.  
  5919.  
  5920.  
  5921.  
  5922.  
  5923.  
  5924.  
  5925.  
  5926.  
  5927.  
  5928.  
  5929.  
  5930.  
  5931.  
  5932.  
  5933.  
  5934.  
  5935.                                          103
  5936.  
  5937.  
  5938.  
  5939.                               DOCZ UTILITIES REFERENCE
  5940.  
  5941.  
  5942.             RETAB
  5943.  
  5944.  
  5945.                  Convert spaces to TAB characters
  5946.  
  5947.                  Arguments
  5948.  
  5949.                       RETAB <a.f.n.> [a.f.n.] [a.f.n.] ... [/tab stop]
  5950.  
  5951.                  Returns
  5952.  
  5953.                       Nothing
  5954.  
  5955.                  Errors
  5956.  
  5957.                       to Standard Error
  5958.  
  5959.             The RETAB utility converts text files aligned with spaces by
  5960.             converting spaces to an equivalent number of requird TAB
  5961.             characters.  The default "tab_stop" is 8.  Analyse the
  5962.             source code you are re-tabbing for the correct value of
  5963.             "tab_stop."
  5964.  
  5965.  
  5966.  
  5967.  
  5968.  
  5969.  
  5970.  
  5971.  
  5972.  
  5973.  
  5974.  
  5975.  
  5976.  
  5977.  
  5978.  
  5979.  
  5980.  
  5981.  
  5982.  
  5983.  
  5984.  
  5985.  
  5986.  
  5987.  
  5988.  
  5989.  
  5990.  
  5991.  
  5992.  
  5993.  
  5994.  
  5995.  
  5996.  
  5997.  
  5998.                                          104
  5999.  
  6000.  
  6001.  
  6002.                                    ERROR MESSAGES
  6003.  
  6004.  
  6005.             1k of memory could not be allocated for the banner!
  6006.             Facility:  DOC
  6007.             Memory could not be allocated while trying to write the
  6008.             cover page
  6009.  
  6010.             <argument> is an invalid argument!
  6011.             Facility:  DOC, DOCXL, DOCHBLD
  6012.             You have passed an invalid argument to the program.
  6013.  
  6014.             <argument> is an unknown argument!
  6015.             Facility:  DOCHBLD
  6016.             You have passed an invalid argument to the program.
  6017.  
  6018.             <argument> argument not recognized!
  6019.             Facility:  DOCXL
  6020.             The user has specified an invalid (possibly misspelled)
  6021.             argument.
  6022.  
  6023.             <argument> is not valid as an option!
  6024.             Facility:  DOCXL
  6025.             The user has specified an invalid option.
  6026.  
  6027.             <argument> specifier unknown!
  6028.             Facility:  DOCXL
  6029.             An argument specifier has been specified that is not
  6030.             recognized
  6031.  
  6032.             <file name> -> <file name> rename failed!
  6033.             Facility:  DOCXL, DOCXLU
  6034.             During a Documentation Index File rebuild, a temporary file
  6035.             could not be renamed to a permanent file.
  6036.  
  6037.             <index file> lock failed!
  6038.             Facility:  DOCXL
  6039.             Locking of the Documentation Index File failed
  6040.  
  6041.             <index file> unlock failed!
  6042.             Facility:  DOCXL
  6043.             Unlocking of the Documentation Index File failed
  6044.  
  6045.             <library name> is an invalid library name
  6046.             Facility:  DOC, DOCXL
  6047.             The user has specified a library name on the command line
  6048.             either too long in length or containing invalid characters.
  6049.  
  6050.             <module name> is an invalid module name
  6051.             Facility:  DOC, DOCXL
  6052.             The user has specified a module name on the command line
  6053.             either too long in length or containing invalid characters.
  6054.  
  6055.             <module name> module documentation not found!
  6056.             Facility:  DOCHBLD
  6057.             No documentation for the specified module name was found in
  6058.             the source file being scanned.
  6059.  
  6060.  
  6061.                                          105
  6062.  
  6063.  
  6064.  
  6065.                                    ERROR MESSAGES
  6066.  
  6067.  
  6068.  
  6069.             <module name> not found!
  6070.             Facility:  DOCHELP
  6071.             The module name requested by the user could not be found in
  6072.             the help library.
  6073.  
  6074.             <number> bytes could not be allocated!
  6075.             Facility:  DOC, DOCHELP, DOCHBLD
  6076.             A memory allocation failed due to lack of free memory.  VMS
  6077.             check related system/account parameters.
  6078.  
  6079.             <option> is wrong for argument <argument number>
  6080.             Facility:  DOCXL
  6081.             The user has specified an option incompatible with the other
  6082.             arguments.
  6083.  
  6084.             <parameter> not recognized as a DOC parameter!
  6085.             Facility:  DOC
  6086.             The user has coded a DOC parameter in the Documentation
  6087.             Header that is not valid.
  6088.  
  6089.             <parameter> has no arguments!
  6090.             Facility:  DOC, DOCHBLD
  6091.             The named parameter specified in the documentation header
  6092.             has no arguments
  6093.  
  6094.             Application Keyword Index sort failed!
  6095.             Facility:  DOC
  6096.             An attempt was made to use an external sort program to sort
  6097.             an intermediate file containing the Application Keyword
  6098.             Index, and the sort failed because (1) the sort program
  6099.             cannot be found, or (2) there is not enough available memory
  6100.             to perform the sort, or (3) the sort program does not work
  6101.             properly.
  6102.  
  6103.             Bad date!
  6104.             Facility:  DOC
  6105.             The Documentation Header contains a revision or fix date of
  6106.             an invalid format.
  6107.  
  6108.             Cannot call the command processor for sort!
  6109.             Facility:  DOC
  6110.             Either a call to the system command processor failed
  6111.             (possibly because it does not exist in the current search
  6112.             path [MSDOS]) or the command processor itself could not find
  6113.             the SORT utility in the current search path.  VMS requires
  6114.             SYS$SYTEM:SORT.EXE.  UNIX requires sort in the search path.
  6115.             MSDOS requires SSORT in the search path.  See INSTALLATION.
  6116.  
  6117.             Cannot determine DOCZ environment!
  6118.             Facility:  DOC, DOCHBLD, DOCHELP, DOCLOG, DOCXL, DOCXLED,
  6119.             DOCXLU, DOCMAN, DOCLEARN
  6120.             The environment variables and/or logical names have not been
  6121.             provided for the DOCZ System.
  6122.  
  6123.  
  6124.                                          106
  6125.  
  6126.  
  6127.  
  6128.                                    ERROR MESSAGES
  6129.  
  6130.  
  6131.  
  6132.             Cannot get DOCZ symbols!
  6133.             Facility:  DOC, DOCHBLD, DOCHELP, DOCLOG, DOCXL, DOCXLED,
  6134.             DOCXLU, DOCMAN, DOCLEARN
  6135.             The environment variables and/or logical names have not been
  6136.             provided for the DOCZ System.
  6137.  
  6138.             Cannot open <file name>!
  6139.             Facility:  DOC, DOCXL, DOCXLU
  6140.             The file cannot be opened in an unspecified mode.  Check
  6141.             file permissions.
  6142.  
  6143.             Cannot open <file name> for output!
  6144.             Facility:  DOCXL, DOCHBLD, DOCXLU
  6145.             The file could not be opened for writing.  Check file
  6146.             protection.
  6147.  
  6148.             Cannot open <file name> for input!
  6149.             Facility:  DOCXL, DOCHBLD, DOCXLU, DOCLOG, DOCLIS, DOCGET
  6150.             The file could not be opened for reading.  Check file
  6151.             protection.
  6152.  
  6153.             Cannot open <Documentation Index File spec> for input!
  6154.             Facility:  DOCXLED
  6155.             File cannot be found or opened.  Check logical names/symbols
  6156.             or file permission.
  6157.  
  6158.             Cannot open help file:  <filename>
  6159.             Facility:  DOCHELP
  6160.             The compiled help library, DOCHELP.HLP, could not be found
  6161.             in the Reference Directory.
  6162.  
  6163.             Cannot open <filename>!
  6164.             Facility:  DOC, DOCXL, DOCHBLD, DOCXLU
  6165.             The named file cannot be opened either because it does not
  6166.             exist (files opened for read) or process privilege does not
  6167.             allow access to the file or directory.
  6168.  
  6169.             Cannot read in Documentation Index File!
  6170.             Facility:  DOC, DOCHBLD
  6171.             The Documentation Index File cannot be read, possible due to
  6172.             file protection violation.
  6173.  
  6174.             CANNOT READ!
  6175.             Facility:  DOCXLED
  6176.             Unexplained read failure in the Documentation Index File.
  6177.  
  6178.             Cannot rename <file name> to <file name>!
  6179.             Facility:  DOC
  6180.             A call was made to the rename system service that failed.
  6181.             This can fail for the same reasons that a Unix mv, an MSDOS
  6182.             REN, or a VMS RENAME can fail.  Check for the pre-existence
  6183.             of the destination file or permissions.
  6184.  
  6185.  
  6186.  
  6187.                                          107
  6188.  
  6189.  
  6190.  
  6191.                                    ERROR MESSAGES
  6192.  
  6193.  
  6194.             Cannot read:  <file name>!
  6195.             Facility:  DOCHBLD
  6196.             The named file cannot be read.  Check file protection.
  6197.  
  6198.             Cannot read file!
  6199.             Facility:  DOCLOG
  6200.             The DOCZ log cannot be read.  Check file protection.
  6201.  
  6202.             CANNOT SEEK!
  6203.             Facility:  DOCXLED
  6204.             Unexplained seek failure in the Documentation Index File.
  6205.  
  6206.             Cannot seek in Documentation Index File!
  6207.             Facility:  DOC
  6208.             A seek failure has occurred in the Documentation Index File
  6209.             for an unknown reason.
  6210.  
  6211.             Cannot seek in help file!
  6212.             Facility:  DOCHELP
  6213.             A seek in the help library file has failed, possible due to
  6214.             the file header being corrupted.
  6215.  
  6216.             Cannot seek in file!
  6217.             Facility:  DOCLOG
  6218.             The DOCZ log cannot be read.  Check file protection.
  6219.  
  6220.             Cannot seek to <file offset>
  6221.             Facility:  DOC, DOCHBLD
  6222.             A seek in a source file failed for an unknown reason.
  6223.  
  6224.             Cannot seek to beginning of module index!
  6225.             Facility:  DOCHBLD
  6226.             While building the on-line help library, an error occurred
  6227.             in a seek in the output file.
  6228.  
  6229.             Cannot validate date: <date>; check date format: <date
  6230.             format>!
  6231.             Facility:  DOCXL, DOCXLED
  6232.             A date was specified on the command line or embedded in the
  6233.             documentation header that does not match the date format
  6234.             string.
  6235.  
  6236.             <command> failed as a command!
  6237.             Facility:  DOCLIS
  6238.             The specified command was to be executed but could not
  6239.             because (1) the command processor could not be loaded, (2)
  6240.             it is an invalid command, (3) the command could not be
  6241.             found, (4) or there is not enough memory.
  6242.  
  6243.  
  6244.  
  6245.  
  6246.  
  6247.  
  6248.  
  6249.  
  6250.                                          108
  6251.  
  6252.  
  6253.  
  6254.                                    ERROR MESSAGES
  6255.  
  6256.  
  6257.             Configuration File specifies printer: <printer name>; but
  6258.             PSET specifies: <printer name>!
  6259.             Facility:  DOC
  6260.             The printer named in the PSET database and DOCZ
  6261.             Configuration File are different.  This is a permissible
  6262.             condition in some environments using alternate Configuration
  6263.             Files.
  6264.  
  6265.             Date format string does not match date format!
  6266.             Facility:  DOC
  6267.             A date was specified on the command line or embedded in the
  6268.             documentation header that does not match the date format
  6269.             string.
  6270.  
  6271.             Could not lock Documentation Index File!
  6272.             Facility:  DOCXL, DOCXLU
  6273.             An attempt to write lock a record in the Documentation Index
  6274.             File has failed.  The record may be locked by another
  6275.             program.
  6276.  
  6277.             Could not call convert-to-stream (VMS version) for
  6278.             <filename>
  6279.             Facility:  DOC, DOCHBLD
  6280.             The named file could not be converted from its present
  6281.             format to a Stream file either because the VMS Convert
  6282.             routines failed or the DOCDAT:  directory does not contain
  6283.             STREAM.FDL.
  6284.  
  6285.             Could not read <number> entries in key index!
  6286.             Facility:  DOCHBLD
  6287.             A read during a help file build caused an error.
  6288.  
  6289.             Could not write <number> entries in key index!
  6290.             Facility:  DOCHBLD
  6291.             A write during a help file build caused an error.
  6292.  
  6293.             Date (date) format error!
  6294.             Facility:  DOC
  6295.             A date was specified on the command line or embedded in the
  6296.             documentation header that does not match the date format
  6297.             string.
  6298.  
  6299.             DOC-RPT_INIT-W-PSET parameter problem!
  6300.             Facility:  DOC
  6301.             Either a PSET parameter was specified in the Configuration
  6302.             File that does not exist in the PSET database, the PSET
  6303.             database has never been built, or the PSET database file
  6304.             (PSET.DAT) cannot be read.
  6305.  
  6306.             Documentation Index File is empty or does not exist!
  6307.             Facility:  DOCXLU
  6308.             The Documentation Index File is empty or does not exist!
  6309.  
  6310.             Documentation Index File has no entries for <library name>!
  6311.  
  6312.  
  6313.                                          109
  6314.  
  6315.  
  6316.  
  6317.                                    ERROR MESSAGES
  6318.  
  6319.  
  6320.             Facility:  DOC
  6321.             A library name was specified for which the Documentation
  6322.             Index File contains no entries.
  6323.  
  6324.             Documentation Index File locking error!
  6325.             Facility:  DOCXLU
  6326.             An attempt to lock the Documentation Index File failed.
  6327.             Check VMS image privileges.  Check MSDOS sharing.
  6328.  
  6329.             DOCZ log is empty!
  6330.             Facility:  DOCLOG
  6331.             There are no entries in the log.  Check to see that logging
  6332.             is enabled (via the Configuration File).  This message will
  6333.             be displayed when DOCLOG is run immediately after
  6334.             installation, and no DOCZ programs have yet had the
  6335.             opportunity to make log entries.
  6336.  
  6337.             Empty field <parameter name> is required!
  6338.             Facility:  DOC
  6339.             A required parameter in a documentation header was specified
  6340.             without any arguments.
  6341.  
  6342.             FIELD:  <parameter name>, count overflow - current=<number>
  6343.             - max=<number>!
  6344.             Facility:  DOC, DOCHBLD
  6345.             The Documentation Header contains a parameter that may occur
  6346.             multiple times, but the user has exceeded the allowable
  6347.             number of occurrences of the parameter.
  6348.  
  6349.             Field count overflow!
  6350.             Facility:  DOCHBLD
  6351.             The Documentation Header contains a parameter that may occur
  6352.             multiple times, but the user has exceeded the allowable
  6353.             number of occurrences of the parameter.
  6354.  
  6355.             File too big or sort utility not found!
  6356.             Facility:  DOC
  6357.             An attempt was made to call an external sort program to sort
  6358.             an intermediate file, and the sort failed because (1) the
  6359.             sort program cannot be found, or (2) there is not enough
  6360.             available memory to perform the sort, or (3) the sort
  6361.             program does not work properly.
  6362.  
  6363.             File write failure on <file name>!
  6364.             Facility:  DOCXL, DOCXLU
  6365.             An attempt to write to a file failed.  Check file protection
  6366.             or device full.
  6367.  
  6368.             Incomplete set of command line arguments!
  6369.             Facility:  DOCXL
  6370.             The requisite set of command line arguments was not properly
  6371.             specified.
  6372.  
  6373.             Index write for <module name> failed!
  6374.  
  6375.  
  6376.                                          110
  6377.  
  6378.  
  6379.  
  6380.                                    ERROR MESSAGES
  6381.  
  6382.  
  6383.             Facility:  DOCHBLD
  6384.             An attempt to write to the Documentation Index File failed.
  6385.             Check file protection.
  6386.  
  6387.             <Index File> lock failed!
  6388.             Facility:  DOCXL
  6389.             An attempt to lock the Documentation Index File failed.
  6390.             Check VMS image privileges.  Check MSDOS sharing.
  6391.  
  6392.             <Index File> unlock failed!
  6393.             Facility:  DOCXL
  6394.             An attempt to unlock the Documentation Index File failed.
  6395.             Check VMS image privileges.  Check MSDOS sharing.
  6396.  
  6397.             Invalid Date!
  6398.             Facility:  DOCXL
  6399.             The user has specified an invalid date.
  6400.  
  6401.             Invalid modification date/time!
  6402.             Facility:  DOCXLED
  6403.             Date or time entered in an improper format.  See DOCZ
  6404.             section on Conventions.
  6405.  
  6406.             Invalid U record in Configuration File!
  6407.             Facility:  DOC, DOCXLU, DOCHBLD
  6408.             An error in the user-supplied U record in the Configuration
  6409.             File was detected.  See DOCZ section on Specifying Options.
  6410.  
  6411.             <library name> is not valid as a DOC library name
  6412.             Facility:  DOC
  6413.             The user specified a module name containing invalid
  6414.             characters (the user may have specified a file name instead
  6415.             of a library name).
  6416.  
  6417.             Library name does not match current library <library name>
  6418.             Facility:  DOC
  6419.             The documentation header in the source for the module
  6420.             contains a .LIBRARY parameter with a different library name
  6421.             than the name specified on the DOC command line.
  6422.  
  6423.             Library, module, or file not specified!
  6424.             Facility:  DOCXL
  6425.             An add/update was requested without specifying the library
  6426.             name, module name, or source file name.
  6427.  
  6428.             Line number <number> contains an unrecognized parameter!
  6429.             Facility:  DOC
  6430.             The DOCZ Configuration File contains an invalid parameter on
  6431.             the specified line.
  6432.  
  6433.             Memory allocation for permutation failed!
  6434.             Facility:  DOC
  6435.  
  6436.  
  6437.  
  6438.  
  6439.                                          111
  6440.  
  6441.  
  6442.  
  6443.                                    ERROR MESSAGES
  6444.  
  6445.  
  6446.             The memory that must be allocated to perform the text
  6447.             permutation on the module descriptions failed.  Memory may
  6448.             be limited in your system.
  6449.  
  6450.             Missing <DOC parameter> field is required!
  6451.             Facility:  DOC
  6452.             A required DOC parameter is missing in the Documentation
  6453.             Header.
  6454.  
  6455.             Month is negative or greater than 12!
  6456.             Facility:  DOC
  6457.             An attempt to validate a date failed because the month was
  6458.             out of range.
  6459.  
  6460.             <module name> is an invalid module name in <file name>
  6461.             Facility:  DOC
  6462.             The specified module name contains invalid characters (the
  6463.             user may have specified a file name instead of a module
  6464.             name).
  6465.  
  6466.             <module name> is an invalid module name!
  6467.             Facility:  DOCXL
  6468.             The specified module name contains invalid characters (the
  6469.             user may have specified a file name instead of a module
  6470.             name).
  6471.  
  6472.             <module name> NOT FOUND FOR <library name> LIBRARY!
  6473.             Facility:  DOCXLED
  6474.             A module was specified in a search, and the module could not
  6475.             be found.
  6476.  
  6477.             Needed to read <number> items but less were read!
  6478.             Facility:  DOCHELP
  6479.             The help library file has not been formatted correctly.  It
  6480.             could either be damaged, or the original documentation was
  6481.             not formatted correctly.
  6482.  
  6483.             No files match <ambiguous file name>!
  6484.             Facility:  DOCLIS
  6485.             An ambiguous file name was specified to DOCLIS for which
  6486.             there were no matches.
  6487.  
  6488.             No FIXES/REVISIONS within date range for <library name>!
  6489.             Facility:  DOC
  6490.             Either a Fix Notice or Revision Notice was selected but no
  6491.             Fix or Revision dates embedded in the module documentation
  6492.             qualify.
  6493.  
  6494.             NO modules found!
  6495.             Facility:  DOC
  6496.             No modules matching the command line criteria could be found
  6497.             in the Documentation Index File.
  6498.  
  6499.             No modules found for help library!
  6500.  
  6501.  
  6502.                                          112
  6503.  
  6504.  
  6505.  
  6506.                                    ERROR MESSAGES
  6507.  
  6508.  
  6509.             Facility:  DOCHBLD
  6510.             No modules could be processed to build a help library.  The
  6511.             Documentation Index File may be empty.
  6512.  
  6513.             No module documentation found in <source file>!
  6514.             Facility:  DOC
  6515.             There were no modules for the current library found in the
  6516.             named source file.  Check the .LIBRARY field.
  6517.  
  6518.             No <report type> for this library!
  6519.             Facility:  DOC
  6520.             One of the various report types was selected for which there
  6521.             were no qualifying modules.
  6522.  
  6523.             No occurrences of <module name> in <library name> library
  6524.             located!
  6525.             Facility:  DOCXL
  6526.             A user-specified search has failed to find any modules.
  6527.  
  6528.             Not enough arguments
  6529.             Facility:  DOCXL
  6530.             Not enough command line arguments have been specified.
  6531.  
  6532.             Not found!
  6533.             Facility:  DOCHELP
  6534.             The user specified a module name not in the documentation
  6535.             help library.
  6536.  
  6537.             NOT FOUND: <file name> Library: <library name> Module:
  6538.             <module name>
  6539.             Facility:  DOCHBLD
  6540.             The source file for the specified module could not be found.
  6541.  
  6542.             Number of days is incorrect for the month!
  6543.             Facility:  DOC
  6544.             A date validation revealed an ill-formatted date.
  6545.  
  6546.             Only <number> DOC parameters found for <module name> in
  6547.             <source file name>!
  6548.             Facility:  DOC
  6549.             The program could not detect enough DOC parameters in the
  6550.             source file for a valid Documentation Header.
  6551.  
  6552.             <option> is not valid as an option!
  6553.             Facility:  DOCXL
  6554.             The option was specified on the command line, but it is
  6555.             invalid.
  6556.  
  6557.             <option> specifier unknown!
  6558.             Facility:  DOCXL
  6559.             The invalid option was specified.
  6560.  
  6561.             OUT OF RANGE!
  6562.             Facility:  DOCXLED
  6563.  
  6564.  
  6565.                                          113
  6566.  
  6567.  
  6568.  
  6569.                                    ERROR MESSAGES
  6570.  
  6571.  
  6572.             You have attempted to select an entry before the first entry
  6573.             in the file or after the last entry in the file.
  6574.  
  6575.             Parameter in DOCZ.CFG specified too many times!
  6576.             Facility:  DOC
  6577.             The specification of a parameter exceeded the maximum
  6578.             allowable occurrences.
  6579.  
  6580.             Permuted description sort failed!
  6581.             Facility:  DOC
  6582.             An attempt was made to call an external sort program to sort
  6583.             an intermediate file containing the permuted module
  6584.             descriptions, and the sort failed because (1) the sort
  6585.             program cannot be found, or (2) there is not enough
  6586.             available memory to perform the sort, or (3) the sort
  6587.             program does not work properly.
  6588.  
  6589.             PSET parameter problem
  6590.             Facility:  DOC
  6591.             You have specified a PSET parameter that does not exist in
  6592.             the PSET database or the PSET database file cannot be
  6593.             opened.
  6594.  
  6595.             Read error in help file!
  6596.             Facility:  DOCHELP
  6597.             The help library file has been damaged, mis-formatted, or
  6598.             file protection has been applied to it.
  6599.  
  6600.             Report formatter initialization failure
  6601.             Facility:  DOC
  6602.             Either memory could not be allocated or the output print
  6603.             file could not be opened for write.
  6604.  
  6605.             Report formatter closing failure
  6606.             Facility:  DOC
  6607.             An exit PSET parameter has been specified that is not in the
  6608.             PSET database or the PSET database file could not be opened.
  6609.  
  6610.             SEARCH ABORTED!
  6611.             Facility:  DOCXLED
  6612.             User pressed a key while a search was in progress (not an
  6613.             error).
  6614.  
  6615.             Second command must be an option!
  6616.             Facility:  DOCLIS
  6617.             A file specification may only be the first argument to
  6618.             DOCLIS.
  6619.  
  6620.             SYSLCK privilege required!
  6621.             Facility:  DOCXL, DOCXLU
  6622.             The DOCXL image (VMS version) must be installed with the
  6623.             SYSLCK privilege or must be run by accounts with the SYSLCK
  6624.             privilege.
  6625.  
  6626.  
  6627.  
  6628.                                          114
  6629.  
  6630.  
  6631.  
  6632.                                    ERROR MESSAGES
  6633.  
  6634.  
  6635.             The day is negative!
  6636.             Facility:  DOC
  6637.             The date could not be validated for the specified reason.
  6638.  
  6639.             The <file name> Configuration File is not formatted
  6640.             correctly!
  6641.             Facility:  DOC
  6642.             The Configuration File is garbled.
  6643.  
  6644.             The font file BANNER.DAT could not be found!
  6645.             Facility:  DOC
  6646.             In all versions except MSDOS, the font file (BANNER.DAT)
  6647.             must be installed in the data directory or search path.
  6648.  
  6649.             The font file BANNER.DAT could not be read!
  6650.             Facility:  DOC
  6651.             The font file (BANNER.DAT) was found but could not be read.
  6652.  
  6653.             The O and V options are incompatible!
  6654.             Facility:  DOCHBLD
  6655.             The user has specified mutually exclusive command options to
  6656.             DOCHBLD
  6657.  
  6658.             The PSET database does not exist or does not contain
  6659.             character attributes!
  6660.             Facility:  DOC
  6661.             Character attributes cannot be determined for the printer
  6662.             specified in the Configuration File because the PSET.DAT
  6663.             file does not exist, cannot be found in the search PATH, or
  6664.             is empty.
  6665.  
  6666.             The year is negative!
  6667.             Facility:  DOC
  6668.             The date could not be validated for the specified reason.
  6669.  
  6670.             Tried to read more than maximum no. (<number>) of
  6671.             references!
  6672.             Facility:  DOC
  6673.             The users library contains more modules than is allowed for
  6674.             the memory allocated on the user's system.  See INSTALLATION
  6675.             for information on the maximum number of modules allowed in
  6676.             a single library displayed by number.
  6677.  
  6678.             Upper Case: <library>-<module>-<file specification>
  6679.             Facility:  DOCXLU
  6680.             While outputting an ASCII Transport File on an MSDOS or VMS
  6681.             system, upper case characters in a file specification were
  6682.             detected; a potential problem if transported to a Unix
  6683.             system.
  6684.  
  6685.             Version Control fetch of <filename> failed!
  6686.             Facility:  DOC, DOCHBLD
  6687.  
  6688.  
  6689.  
  6690.  
  6691.                                          115
  6692.  
  6693.  
  6694.  
  6695.                                    ERROR MESSAGES
  6696.  
  6697.  
  6698.             (VMS version)The module is not contained in the CMS library
  6699.             pointed to by DOCSRC, or CMS produced an undefined failure
  6700.             on a fetch.
  6701.  
  6702.             Wrong arguments
  6703.             Facility:  DOCXL
  6704.             The user has specified the wrong combination of arguments.
  6705.  
  6706.  
  6707.  
  6708.  
  6709.  
  6710.  
  6711.  
  6712.  
  6713.  
  6714.  
  6715.  
  6716.  
  6717.  
  6718.  
  6719.  
  6720.  
  6721.  
  6722.  
  6723.  
  6724.  
  6725.  
  6726.  
  6727.  
  6728.  
  6729.  
  6730.  
  6731.  
  6732.  
  6733.  
  6734.  
  6735.  
  6736.  
  6737.  
  6738.  
  6739.  
  6740.  
  6741.  
  6742.  
  6743.  
  6744.  
  6745.  
  6746.  
  6747.  
  6748.  
  6749.  
  6750.  
  6751.  
  6752.  
  6753.  
  6754.                                          116
  6755.  
  6756.  
  6757.  
  6758.                                    OTHER FEATURES
  6759.  
  6760.  
  6761.             Directory Layout
  6762.  
  6763.             The DOCZ System programs neither store source files nor do
  6764.             they create any directories in which source files are
  6765.             stored.  The path to a source file is stored in the
  6766.             Documentation Index File.  The file name specified in that
  6767.             path may be specified either with or without a directory
  6768.             name.  If no directory name is specified with the file or
  6769.             there is no U record in the Configuration File that applies
  6770.             to the current module, the default condition is assumed:
  6771.  
  6772.                  (1)  The root directory for such source files will be
  6773.                       pointed to by the DOCSRC symbol or logical name.
  6774.  
  6775.                  (2)  The file will be located in a sub-directory of the
  6776.                       DOCSRC root directory, the name of which will be
  6777.                       the name of the library (in upper case).
  6778.  
  6779.             For example, if a module fred were stored in the fred.c
  6780.             source, and specified to DOCXL as in:
  6781.  
  6782.                  DOCXL clib fred fred.c
  6783.  
  6784.             The default location of the fred.c source file would be:
  6785.  
  6786.                  VMS:      [equivalent_of_DOCSRC.CLIB]FRED.C
  6787.                  MSDOS:    %DOCSRC%\CLIB\FRED.C
  6788.                  UNIX:          $DOCSRC/CLIB/fred.c
  6789.  
  6790.             If a directory specification is specified with the source
  6791.             file, that full specification will be used to find the file.
  6792.  
  6793.             In the VMS version (using CMS version control), if the
  6794.             subdirectory of the library name is not a valid CMS library,
  6795.             the directory pointed to by DOCSRC will be tested for
  6796.             validity as a CMS library.  If DOCSRC points to a valid CMS
  6797.             library, source files will be fetched from that library.
  6798.             This feature allows CMS users to combine all source files in
  6799.             all libraries into one CMS library (should they choose to do
  6800.             so).
  6801.  
  6802.  
  6803.  
  6804.  
  6805.  
  6806.  
  6807.  
  6808.  
  6809.  
  6810.  
  6811.  
  6812.  
  6813.  
  6814.  
  6815.  
  6816.  
  6817.                                          117
  6818.  
  6819.  
  6820.  
  6821.                                    OTHER FEATURES
  6822.  
  6823.  
  6824.             Cross-Platform Development
  6825.  
  6826.  
  6827.  
  6828.             The Documentation Index File
  6829.  
  6830.             Remember, that if no directory is specified with a file name
  6831.             in the Documentation Index File or the default file
  6832.             specification is not overridden with a U record in the
  6833.             Configuration File, DOCZ assumes the default condition and
  6834.             internally generates a path to the file based on the DOCSRC
  6835.             symbol (or logical name).  On the other hand, a directory
  6836.             name may be stored with the full file specification for a
  6837.             source module, forcing DOCZ to bypass the use of the DOCSRC
  6838.             symbol.  This feature is especially useful when DOCZ
  6839.             documentation is found in headers that must be included by
  6840.             the compiler, and the development environment is configured
  6841.             such that there is a header directory separate from the
  6842.             location used for the storage of DOCZ source files.
  6843.  
  6844.             Specifying a directory name can pose an interesting
  6845.             challenge in a multi-platform development environment, as
  6846.             directory specifications do not generally transport from one
  6847.             operating system to another.
  6848.  
  6849.             For those instances where full file specifications need to
  6850.             be specified in the Documentation Index and  transportation
  6851.             of the Documentation Index File from one hardware platform
  6852.             to another is necessary, the DOCZ system allows symbol
  6853.             substitution for the directory portion of a complete file
  6854.             specification.  If a valid file name is preceded by a token
  6855.             surrounded by a dollar ($) sign, an attempt to translate
  6856.             that token, using the environment symbols or logical names,
  6857.             into a directory specification will be performed.
  6858.  
  6859.             For example:  assume a symbol (or logical name) is defined:
  6860.  
  6861.                  VMS:
  6862.  
  6863.                       SRCFILES == "$2$DUA21:[USER.PROJECT.SOURCE]"
  6864.  
  6865.                  or
  6866.  
  6867.                       DEFINE/PROCESS SRCFILES -
  6868.                       $2$DUA21:[USER.PROJECT.SURCE]
  6869.  
  6870.                  MSDOS:
  6871.  
  6872.                       SET SRCFILES=c:\user\project\source
  6873.  
  6874.                  UNIX:
  6875.  
  6876.                       SRCFILES=/usr2/project/source
  6877.                       export SRCFILES
  6878.  
  6879.  
  6880.                                          118
  6881.  
  6882.  
  6883.  
  6884.                                    OTHER FEATURES
  6885.  
  6886.  
  6887.             And, the module were added to the DOCZ system by:
  6888.  
  6889.                  DOCXL clib fred $SRCFILES$fred.c
  6890.  
  6891.             or (in the Unix version, where the last argument must be
  6892.             quoted to preserve the '$' sign being passed to DOCXL):
  6893.  
  6894.                  DOCXL clib fred '$SRCFILES$fred.c'
  6895.  
  6896.             When the module is needed by the DOCZ system, the SRCFILES
  6897.             symbol will be translated to the required directory
  6898.             specification.
  6899.  
  6900.             This feature will allow you to use the same Documentation
  6901.             Index File transported to different computers using
  6902.             different file naming conventions when you choose to specify
  6903.             full file specifications in the Documentation Index.  See
  6904.             the documentation DOCXLU for information on generating ASCII
  6905.             Transport Files for the Documentation Index File.
  6906.  
  6907.             ASCII Transport Files for the Documentation Index File are
  6908.             produced by the DOCXLU command.  An output file is generated
  6909.             using the /ao option, and an input file is read using the
  6910.             /ai option.  The method used for physically transferring the
  6911.             ASCII files from one platform to another is totally
  6912.             dependent on your site's environment and local network, and
  6913.             can be achieved in several ways.  In all cases, insure that
  6914.             Transport files are transported as "text" files.
  6915.  
  6916.  
  6917.  
  6918.  
  6919.  
  6920.  
  6921.  
  6922.  
  6923.  
  6924.  
  6925.  
  6926.  
  6927.  
  6928.  
  6929.  
  6930.  
  6931.  
  6932.  
  6933.  
  6934.  
  6935.  
  6936.  
  6937.  
  6938.  
  6939.  
  6940.  
  6941.  
  6942.  
  6943.                                          119
  6944.  
  6945.  
  6946.  
  6947.                                    OTHER FEATURES
  6948.  
  6949.  
  6950.             DOCZ Help Libraries
  6951.  
  6952.             ASCII Transport Files for on-line help libraries can be
  6953.             produced by the DOCHBLD command.  An output file is
  6954.             generated using the /ao option, and an input file is read
  6955.             using the /ai option.  With this capability, in a cross-
  6956.             platform development environment, the source files need be
  6957.             kept on only one platform, but the help libraries can be
  6958.             made available to developers on all platforms.  Note:  the
  6959.             DOCZ System must be licensed on all platforms.
  6960.  
  6961.             The ASCII Transport File output of the DOCHBLD program can
  6962.             be combined with the ASCII Transport File from other
  6963.             platforms.  It can also be combined with the on-line help
  6964.             library that comes with the DOCZ System.  Simply use the /ai
  6965.             option to combine ASSCI Transport Files as input to DOCHBLD.
  6966.  
  6967.             For example, to produce an ASCII Transport File for an on-
  6968.             line help library for all modules documented by your local
  6969.             DOCZ System:
  6970.  
  6971.                  dochbld /ao=help.txt
  6972.  
  6973.             Then, combine the ASCII Transport File with DOCHELP.TXT,
  6974.             which is distributed with the DOCZ System:
  6975.  
  6976.             Unix:          dochbld -ai=help.txt,$DOCSRC/dochelp.txt
  6977.             VMS:      dochbld /ai=help.txt,DOCSRC:dochelp.txt
  6978.             MSDOS:    dochbld /ai=help.txt,%DOCSRC%\dochelp.txt
  6979.  
  6980.             Which will build a new on-line help library using the
  6981.             contents of both help.txt and dochelp.txt.
  6982.  
  6983.             To combine your local on-line help library with both the
  6984.             DOCZ help library and the Standard C Library on-line help,
  6985.             use the following command(s):
  6986.  
  6987.             Unix:          dochbld -
  6988.             ai=help.txt,$DOCSRC/dochelp.txt,$DOCSRC/c.txt
  6989.             VMS:      dochbld
  6990.             /ai=help.txt,DOCSRC:dochelp.txt,DOCSRC:c.txt
  6991.             MSDOS:    dochbld
  6992.             /ai=help.txt,%DOCSRC%\dochelp.txt,%DOCSRC%\c.txt
  6993.  
  6994.  
  6995.  
  6996.  
  6997.  
  6998.  
  6999.  
  7000.  
  7001.  
  7002.  
  7003.  
  7004.  
  7005.  
  7006.                                          120
  7007.  
  7008.  
  7009.  
  7010.                                    OTHER FEATURES
  7011.  
  7012.  
  7013.             Version Control
  7014.  
  7015.             None of the DOCZ System programs actually update source code
  7016.             using the DOCZ supported version control software; this is a
  7017.             responsibility of the site.  However, the DOCZ System
  7018.             provides tools to help automate such activities.  One such
  7019.             tool is the DOCLIS command, with which a source add or
  7020.             update can be automated through the calling of command files
  7021.             written for the site's development environment by the local
  7022.             administrator.  See the DOCLIS documentation for the
  7023.             implementation of this feature and the EXAMPLES in this
  7024.             manual for suggestions on how to implement automation using
  7025.             this feature.  Whenever possible, source code for the
  7026.             examples are included on the distribution media for use and
  7027.             modification by the DOCZ System administrator.
  7028.  
  7029.  
  7030.  
  7031.             Cross-Platform Transportation Summary
  7032.  
  7033.                  Export the Documentation Index File
  7034.  
  7035.                       DOCXLU /ao=<transport file>
  7036.  
  7037.                  Import the Documentation Index FIle
  7038.  
  7039.                       DOCXLU /ai=<transport file>
  7040.  
  7041.                  Export the Help Library
  7042.  
  7043.                       DOCHBLD /ao=<transport file>
  7044.  
  7045.                  Import the Help Library
  7046.  
  7047.                       DOCHBLD /ai=<transport file>
  7048.  
  7049.                  Export the printer database
  7050.  
  7051.                       PSET /ao=<transport file>
  7052.  
  7053.                  Import the printer database
  7054.  
  7055.                       PSET /ai=<transport file>
  7056.  
  7057.  
  7058.  
  7059.  
  7060.  
  7061.  
  7062.  
  7063.  
  7064.  
  7065.  
  7066.  
  7067.  
  7068.  
  7069.                                          121
  7070.  
  7071.  
  7072.  
  7073.                                    OTHER FEATURES
  7074.  
  7075.  
  7076.             Using DOCZ WIthout Source Code
  7077.  
  7078.  
  7079.             The  DOCZ System can be used to document routines and
  7080.             programs for which you do not have the source code.  The
  7081.             documentation header can be contained in a text file stored
  7082.             with the other members of the library.  In fact, any number
  7083.             of modules can be documented in this manner, including
  7084.             libraries supplied with compilers.  Combining such
  7085.             documentation with the DOCZ System provides a sole
  7086.             referencing source for all developers, including on-line
  7087.             help.
  7088.  
  7089.             The documentation for such modules can either be typed by
  7090.             hand or scanned-in, provided you have the proper equipment
  7091.             and provided that the scanning of the documentation does not
  7092.             violate copyrights.
  7093.  
  7094.  
  7095.  
  7096.  
  7097.  
  7098.  
  7099.  
  7100.  
  7101.  
  7102.  
  7103.  
  7104.  
  7105.  
  7106.  
  7107.  
  7108.  
  7109.  
  7110.  
  7111.  
  7112.  
  7113.  
  7114.  
  7115.  
  7116.  
  7117.  
  7118.  
  7119.  
  7120.  
  7121.  
  7122.  
  7123.  
  7124.  
  7125.  
  7126.  
  7127.  
  7128.  
  7129.  
  7130.  
  7131.  
  7132.                                          122
  7133.  
  7134.  
  7135.  
  7136.                                        HISTORY
  7137.  
  7138.  
  7139.             DOCZ 1.0
  7140.  
  7141.             4/86 31469     DOC and DOCXL first release, VMS
  7142.             5/86 31472     Add REVISION Notice report capability to DOC
  7143.             6/86 31528     Add user-specified printer set-up capability
  7144.             7/86 31559     Cover tutorial/introduction feature
  7145.                            introduced to DOC
  7146.             7/86 31562     Increased size provision for module names and
  7147.                            file names
  7148.             8/86 31569     VMS automatic conversion to Stream_LF
  7149.                            introduced
  7150.             12/86 31702    DOC parameters converted from numeric to
  7151.                            English
  7152.  
  7153.  
  7154.             DOCZ 1.1
  7155.  
  7156.             1/87 31726     MSDOS version introduced
  7157.             7/87 31906     CMS support introduced (VMS version)
  7158.             8/87 31953     Add capability to specify DOCZ directories
  7159.                            via CLI symbols
  7160.             9/87 31971     Add on-line help library build for VMS
  7161.                            version
  7162.             9/87 31983     Add automatic installation for popular
  7163.                            printers
  7164.             9/87 31987     Add support for printer character attributes
  7165.                            in documentation
  7166.             10/87 32017    Add provision to locate source in multiple
  7167.                            named directories
  7168.  
  7169.  
  7170.             DOCZ 1.3
  7171.  
  7172.             1/88 32109     Add FIX Notice report capability to DOC
  7173.             1/88 32110     Add Documentation Index File rebuild
  7174.                            capability
  7175.             2/88 32128     Add documentation summary feature to DOC
  7176.             2/88 32127     Add FORTRAN, BASIC, COBOL, and other language
  7177.                            support
  7178.             3/88 32157     Add Documentation Index File editing
  7179.                            capability
  7180.             5/88 32207     Add capability to specify multiple individual
  7181.                            modules to DOC
  7182.             6/88 32240     Add capability for unique user-specified
  7183.                            source code format
  7184.             7/88 32275     Add on-line help program for all versions
  7185.             7/88 32290     MSDOS BRIEF support introduced
  7186.             8/88 32311     MSDOS Installation Kit introduced
  7187.             9/88 32348     Add capability to verify presence of entire
  7188.                            library source code
  7189.             9/88 32351     Add Documentation Index locked notification
  7190.                            feature
  7191.  
  7192.  
  7193.  
  7194.  
  7195.                                          123
  7196.  
  7197.  
  7198.  
  7199.                                        HISTORY
  7200.  
  7201.  
  7202.             DOCZ 1.4
  7203.  
  7204.             9/88 32326     UNIX version introduced, first built on AT&T
  7205.                            3B2, SysV.3.1
  7206.             9/88 32351     MSDOS network version introduced
  7207.             10/88 32356    UNIX sccs support introduced
  7208.             11/88 32387    DOCZ built on XENIX-286, Rel. 2.2.2
  7209.             11/88 32402    Add capability to specify multiple
  7210.                            Application Keywords
  7211.             12/88 32417    Add ASCII Transport facility for on-line help
  7212.                            libraries
  7213.  
  7214.  
  7215.             DOCZ 1.5
  7216.  
  7217.             1/89 32448     Totally revised and typeset DOCZ System
  7218.                            documentation
  7219.             1/89 32463     DOCZ built on Convergent S640, SysV.2.5
  7220.             1/89 32477     VMS VMSINSTAL Installation Kit introduced
  7221.             1/89 32478     Add ASCII Transport output for Documentation
  7222.                            Index File
  7223.             2/89 32479     Add capability to specify source code
  7224.                            language via file extensions
  7225.             2/89 32499     Add current date defaulting to all programs
  7226.             3/89 32515     Introduce DOCXLU utility
  7227.             3/89 32529     Unify CLI symbols and logical names across
  7228.                            all supported platforms
  7229.             4/89 32547     Add user specified and European date format
  7230.                            support
  7231.             4/89 32550     DOCZ transaction logging introduced
  7232.             5/89 32568     DOCZ built on Interactive 386, SysV.3.2
  7233.             6/89 32602     Source file directory specs made as sub-
  7234.                            directories
  7235.             6/89 32611     DOCLIS utility added
  7236.             8/89 32696     Added symbol substitution capability
  7237.             9/89 32689     Added CALCDATE utility
  7238.             10/89 32754    Added auto-load capability to DOCLIS
  7239.             11/89 32743    Added ASCII Transport capability to PSET
  7240.             12/89 32792    Added platform summary to full DOC output
  7241.             1/90 32819     Removed terminal dependence from DOCXLED and
  7242.                            PCODE
  7243.             1/90 32820     Added permuted description to full DOC output
  7244.             3/90 32886     Added universal support for version control
  7245.                            and alternate directory naming
  7246.             3/90 32897     Added reporting capability to DOCLOG
  7247.             4/90 32910     DOCZ built on AViiON/DGUX
  7248.             5/90 32939     DOCZ built on SUN/SPARC
  7249.  
  7250.  
  7251.             DOCZ 1.6
  7252.  
  7253.             10/90 33129    Added statistics logging
  7254.             10/90 33131    Added Variable TAB expansion
  7255.             11/90 33145    Added DOCHELP module description search
  7256.  
  7257.  
  7258.                                          124
  7259.  
  7260.  
  7261.  
  7262.                                        HISTORY
  7263.  
  7264.  
  7265.             12/90 33156    Added DOCMAN on-line User Manual
  7266.             1/91 33185     Added [z_opt] directory specification
  7267.                            override
  7268.             1/91 33190     DOCZ built on NCR 500, 700
  7269.             3/91 33238     Added FILLS, DETAB, and RETAB
  7270.             4/91 33270     Added DOCLEARN tutorial
  7271.             4/91 33285     DOCZ built on IBM RS6000/AIX
  7272.             8/91 33401     DOCZ built on SCO Unix
  7273.  
  7274.  
  7275.  
  7276.  
  7277.  
  7278.  
  7279.  
  7280.  
  7281.  
  7282.  
  7283.  
  7284.  
  7285.  
  7286.  
  7287.  
  7288.  
  7289.  
  7290.  
  7291.  
  7292.  
  7293.  
  7294.  
  7295.  
  7296.  
  7297.  
  7298.  
  7299.  
  7300.  
  7301.  
  7302.  
  7303.  
  7304.  
  7305.  
  7306.  
  7307.  
  7308.  
  7309.  
  7310.  
  7311.  
  7312.  
  7313.  
  7314.  
  7315.  
  7316.  
  7317.  
  7318.  
  7319.  
  7320.  
  7321.                                          125
  7322.  
  7323.  
  7324.  
  7325.  
  7326.                                       EXAMPLES
  7327.  
  7328.  
  7329.             Building a Documentation Library
  7330.  
  7331.             The following is a set of MSDOS commands that may be used to
  7332.             add a module named "CMDLINE" documented in the source file
  7333.             "CMDLINE.PAS," and place it in the "ULIB" library:
  7334.  
  7335.                  REM move source to source directory
  7336.                  COPY CMDLINE.PAS \DOCSRC\ULIB
  7337.                  REM add/update Documentation Index File
  7338.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7339.                  REM run the documentation
  7340.                  DOC ULIB CMDLINE
  7341.  
  7342.             The equivalent commands for VMS (without CMS):
  7343.  
  7344.                  ! move source to source directory
  7345.                  DOCROOT = F$EXTRACT(0,F$LENGTH(F$TRNLNM("DOCSRC"))-$
  7346.                  1,F$LOGICAL("DOCSRC"))
  7347.                  COPY CMDLINE.PAS 'DOCROOT'.ULIB]
  7348.                  ! add/update Documentation Index File
  7349.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7350.                  ! run the documentation
  7351.                  DOC ULIB CMDLINE
  7352.  
  7353.             The equivalent commands for VMS with CMS:
  7354.  
  7355.                  DOCROOT = F$EXTRACT(0,F$LENGTH(F$TRNLNM("DOCSRC"))-
  7356.                  1,F$LOGICAL("DOCSRC"))
  7357.                  CMS SET LIBRARY 'DOCROOT'.ULIB]
  7358.                  ! insert source in version control library
  7359.                  CMS CREATE ELEMENT CMDLINE.PAS <comment>
  7360.                  ! associate group name (optional)
  7361.                  CMS INSERT ELEMENT CMDLINE.PAS ULIB <comment>
  7362.                  ! add/update Documentation Index File
  7363.                  DOCXL ULIB CMDLINE CMDLINE.PAS
  7364.                  ! run the documentation
  7365.                  DOC ULIB CMDLINE
  7366.  
  7367.             The equivalent commands for UNIX (without SCCS):
  7368.  
  7369.                  # move source to source directory
  7370.                  mv cmdline.pas $DOCSRC/ULIB
  7371.                  # add/update Documentation Index File
  7372.                  docxl ulib cmdline cmdline.pas
  7373.                  # run the documentation
  7374.                  doc ulib cmdline
  7375.  
  7376.             The equivalent commands for UNIX with SCCS:
  7377.  
  7378.                  # update version control
  7379.                  delta $DOCSRC/ULIB/cmdline.pas
  7380.                  # add/update Documentation Index File
  7381.                  docxl ulib cmdline cmdline.pas
  7382.  
  7383.  
  7384.  
  7385.                                          127
  7386.  
  7387.  
  7388.  
  7389.                                       EXAMPLES
  7390.  
  7391.  
  7392.                  # run the documentation
  7393.                  doc ulib cmdline
  7394.  
  7395.             C Language
  7396.  
  7397.                  See strmcpy.c
  7398.  
  7399.             8086 Assembly
  7400.  
  7401.                  See strmcpy.asm
  7402.  
  7403.             VAX11 Assembly
  7404.  
  7405.                  See strmcpy.mar
  7406.  
  7407.             MSDOS Batch File
  7408.  
  7409.                  See move.bat
  7410.  
  7411.             BASIC Function
  7412.  
  7413.                  Requires a Comment String Mask in Configuration File
  7414.  
  7415.                  See fake.bas
  7416.  
  7417.             FORTRAN Function
  7418.  
  7419.                  Requires a Comment String Mask in Configuration File
  7420.  
  7421.                  See upcase.for
  7422.  
  7423.             Pascal Function
  7424.  
  7425.                  See cmdline.pas
  7426.  
  7427.             DCL Command File
  7428.  
  7429.                  See mailfile.com
  7430.  
  7431.  
  7432.             Bourne Shell Script
  7433.  
  7434.                  See cp_r.sh
  7435.  
  7436.             C Language Macro
  7437.  
  7438.                  See macro.h
  7439.  
  7440.             Dbase Language
  7441.  
  7442.                  Requires a Comment String Mask in Configuration File
  7443.  
  7444.                  gtsa.prg
  7445.  
  7446.  
  7447.  
  7448.                                          128
  7449.  
  7450.  
  7451.  
  7452.                                       EXAMPLES
  7453.  
  7454.  
  7455.             Perl Language
  7456.  
  7457.                  See frank.prl
  7458.  
  7459.             DOCZ Automation
  7460.  
  7461.                  See DOCREVS.COM
  7462.  
  7463.             DOCZ Automation
  7464.  
  7465.                  docrevs.sh
  7466.  
  7467.             DOCZ Automation
  7468.  
  7469.                  See DOCSTASH.COM
  7470.  
  7471.             DOCZ Automation
  7472.  
  7473.                  docstash
  7474.  
  7475.  
  7476.  
  7477.  
  7478.  
  7479.  
  7480.  
  7481.  
  7482.  
  7483.  
  7484.  
  7485.  
  7486.  
  7487.  
  7488.  
  7489.  
  7490.  
  7491.  
  7492.  
  7493.  
  7494.  
  7495.  
  7496.  
  7497.  
  7498.  
  7499.  
  7500.  
  7501.  
  7502.  
  7503.  
  7504.  
  7505.  
  7506.  
  7507.  
  7508.  
  7509.  
  7510.  
  7511.                                          129
  7512.  
  7513.  
  7514.  
  7515.                                       EXAMPLES
  7516.  
  7517.  
  7518.             A Sample DOCZ Library
  7519.  
  7520.  
  7521.             As an example for a real DOCZ application, a DOCZ reference
  7522.             manual containing six modules is contained in the file,
  7523.             CSUB.DOC, which was provided by the installation procedure
  7524.             in the DOCSRC directory.  The companion source files, also
  7525.             deposited in the DOCSRC directory, are:
  7526.  
  7527.                  delstr.asm
  7528.                  haspriv.c
  7529.                  insert.mar
  7530.                  juldate.c
  7531.                  macros.h
  7532.                  zero.c
  7533.  
  7534.             All listings are examples from real-life DOCZ libraries.
  7535.  
  7536.             This library happens to be a C function library, but the
  7537.             DOCZ System is not limited to any particular language.
  7538.  
  7539.  
  7540.  
  7541.  
  7542.  
  7543.  
  7544.  
  7545.  
  7546.  
  7547.  
  7548.  
  7549.  
  7550.  
  7551.  
  7552.  
  7553.  
  7554.  
  7555.  
  7556.  
  7557.  
  7558.  
  7559.  
  7560.  
  7561.  
  7562.  
  7563.  
  7564.  
  7565.  
  7566.  
  7567.  
  7568.  
  7569.  
  7570.  
  7571.  
  7572.  
  7573.  
  7574.                                          130
  7575.  
  7576.  
  7577.  
  7578.                                   TECHNICAL DETAILS
  7579.  
  7580.  
  7581.             Documentation Index Record Format
  7582.  
  7583.             The Documentation Index File, DOCXL.DAT, is a sequential,
  7584.             non-indexed flat file with fixed-length records containing
  7585.             both binary and ASCII data.  VMS version:  The file format
  7586.             is Stream_LF.
  7587.  
  7588.             Each record consists of:
  7589.  
  7590.                  11 character array and NUL terminator - library name
  7591.                  31 character array and NUL terminator - module name
  7592.  
  7593.                  MSDOS version:           88 character array and NUL
  7594.                  terminator - file spec
  7595.                  VMS and UNIX versions:   128 character array and NUL
  7596.                                           terminator - file spec
  7597.  
  7598.                  4 byte unsigned integer - time/date of last update (in
  7599.                                           Unix time)
  7600.                  2 byte unsigned integer - date of introduction
  7601.                  1 byte flag indicating a deleted record
  7602.                  1 byte pad
  7603.  
  7604.  
  7605.  
  7606.             Development Language
  7607.  
  7608.             All DOCZ programs were developed in the C Language, and draw
  7609.             on a portable C library developed in Assembly (VMS and
  7610.             MSDOS) and C.
  7611.  
  7612.  
  7613.  
  7614.  
  7615.  
  7616.  
  7617.  
  7618.  
  7619.  
  7620.  
  7621.  
  7622.  
  7623.  
  7624.  
  7625.  
  7626.  
  7627.  
  7628.  
  7629.  
  7630.  
  7631.  
  7632.  
  7633.  
  7634.  
  7635.  
  7636.  
  7637.                                          131
  7638.  
  7639.  
  7640.  
  7641.                                   TECHNICAL DETAILS
  7642.  
  7643.  
  7644.             Version Control Software Interface
  7645.  
  7646.                  VMS version:
  7647.  
  7648.                              (Code Management System) has been installed
  7649.                       If CMS
  7650.                       on your VMS system, the DOCZ installation will
  7651.                       detect this (by searching for
  7652.                       SYS$SHARE:CMSSHR.EXE) and link to the CMS callable
  7653.                       interface.  If DOCSRC points to a CMS library
  7654.                       directory, modules will be fetched via CMS.  If
  7655.                       CMS is installed on your VMS system after the DOCZ
  7656.                       System is installed, DOCZ will have to be re-
  7657.                       installed.  The DOCZ System is designed to work
  7658.                       either with or without CMS.
  7659.  
  7660.                  UNIX version:
  7661.  
  7662.                       When a DOCZ module is requested by the DOC
  7663.                       program, the source file name is prepended with
  7664.                       "s." and a check for a file of that name is made.
  7665.                       If a file of that name exists in a sub-directory
  7666.                       of the DOCSRC directory or the path specified in
  7667.                       the Documentation Index File, an sccs "get" will
  7668.                       be performed to fetch the file from sccs.  If the
  7669.                       file name without the "s." prefix exists instead,
  7670.                       it will be used for input to the DOC program.
  7671.  
  7672.  
  7673.  
  7674.             Standard Error
  7675.  
  7676.             Error messages are always directed to Standard Error and may
  7677.             be re-directed (if supported by your operating system).
  7678.  
  7679.  
  7680.             8.5 x 11 Documentation Size
  7681.  
  7682.             In a recent Usenet survey concerning documentation size,
  7683.             MSDOS, VMS, and UNIX software developers expressed a
  7684.             preference for the standard 8.5 x 11 inch documentation size
  7685.             at a ratio of about six to one.  Hence, the DOCZ User Manual
  7686.             has been produced in a size that suits most of its users.
  7687.  
  7688.  
  7689.  
  7690.             Case in Module and Library Names
  7691.  
  7692.             In most environments in which DOCZ is used, case is
  7693.             significant in identifiers.  However, in large development
  7694.             environments name clashes are common.  Hence, the DOCZ
  7695.             convention to ignore case in identifiers has been adapted to
  7696.             decrease the chances for confusion and error in environments
  7697.             where DOCZ is likely to be used.
  7698.  
  7699.  
  7700.  
  7701.                                          132
  7702.  
  7703.  
  7704.  
  7705.                                   TECHNICAL DETAILS
  7706.  
  7707.  
  7708.             Some Implementation Requirements
  7709.  
  7710.                  Portability
  7711.  
  7712.                       One design criteria for the DOCZ System was an
  7713.                       ideal cross-platform development environment.
  7714.                       Even in single-platform shops, The DOCZ System
  7715.                       provides a complete automated code documentation
  7716.                       system.  But, in multi-platform development shops,
  7717.                       it is unique.
  7718.  
  7719.  
  7720.  
  7721.  
  7722.  
  7723.  
  7724.  
  7725.  
  7726.  
  7727.  
  7728.  
  7729.  
  7730.  
  7731.  
  7732.  
  7733.  
  7734.  
  7735.  
  7736.  
  7737.  
  7738.  
  7739.  
  7740.  
  7741.  
  7742.  
  7743.  
  7744.  
  7745.  
  7746.  
  7747.  
  7748.  
  7749.  
  7750.  
  7751.  
  7752.  
  7753.  
  7754.  
  7755.  
  7756.  
  7757.  
  7758.  
  7759.  
  7760.  
  7761.  
  7762.  
  7763.  
  7764.                                          133
  7765.  
  7766.  
  7767.  
  7768.  
  7769.                                 QUESTIONS AND ANSWERS
  7770.  
  7771.  
  7772.             How is the name "DOCZ" pronounced?
  7773.  
  7774.                  It sounds like "docs."
  7775.  
  7776.             How do I delete a module?
  7777.  
  7778.                  Run DOCXL with the /x option, naming the library and
  7779.                  module.  Or, run DOCXLED, find the record containing
  7780.                  the module, and change the deleted record field to Y.
  7781.                  You may then optionally remove the source from the DOCZ
  7782.                  directories, if this is the only module contained in
  7783.                  the source.
  7784.  
  7785.             Can I use any parameters other than those listed in the
  7786.             valid parameter table?
  7787.  
  7788.                  No.  DOCZ recognizes only the listed parameters and
  7789.                  considers any others to be typographical errors.
  7790.  
  7791.             Can I use the on-line help system for my Standard Library?
  7792.  
  7793.                  DOCZ does not limit you to modules for which you have
  7794.                  the source code.  Any program, subroutine, or command
  7795.                  file can be documented with DOCZ.  See the section on
  7796.                  "OTHER FEATURES:  Using DOCZ Without Source Code."
  7797.  
  7798.             How can I be sure that my DOCZ environment is properly set-
  7799.             up?
  7800.  
  7801.                  (1)  To verify the presence of required source files,
  7802.                       use:
  7803.  
  7804.                       DOCXLU /V
  7805.  
  7806.                  (2)  To examine symbol/logical name settings, options
  7807.                       specified in the Configuration File, and other
  7808.                       important information about the environment, use:
  7809.  
  7810.                       DOCXLU /S
  7811.  
  7812.                  (3)  To verify the integrity of documentation headers,
  7813.                       run DOC once for each library:
  7814.  
  7815.                       DOC <library name>
  7816.  
  7817.             Character attributes are not being utilized properly on my
  7818.             printer.
  7819.  
  7820.                  Insure that the PSET printer database has been
  7821.                  installed for your printer:  the PCODE utility is
  7822.                  provided for this.  If the PCODE utility does not list
  7823.                  your printer, use the PSET editor to manually describe
  7824.                  each of the sequences required by DOC.  See "SELECTING
  7825.                  OPTIONS:  The Printer Interface."
  7826.  
  7827.  
  7828.                                          135
  7829.  
  7830.  
  7831.  
  7832.                                 QUESTIONS AND ANSWERS
  7833.  
  7834.  
  7835.  
  7836.             What is the SSORT program that is installed with the MSDOS
  7837.             version?
  7838.  
  7839.                  It is a text sorting program with functionality
  7840.                  identical to the SORT program found on many MSDOS
  7841.                  systems.  DOCZ supplies its own sorting program because
  7842.                  there is no guarantee that the user will have the MSDOS
  7843.                  SORT program installed or that it can be found in their
  7844.                  search path.  In addition, some vendors supply a SORT
  7845.                  program that does not always work as expected.
  7846.  
  7847.             Can I customize headers and footers in the output
  7848.             documentation?
  7849.  
  7850.                  No.  They are fixed in format.  But page width, page
  7851.                  length, and margins can be adjusted to suite your
  7852.                  needs.  See "SELECTING OPTIONS:  The Printer
  7853.                  Interface."
  7854.  
  7855.             DOCZ is available on a limited number of hardware platforms.
  7856.             When can I expect it to be available on my favorite
  7857.             platform?
  7858.  
  7859.                  It depends on how cooperative the platform vendor is,
  7860.                  the expense of obtaining the platform, and the level of
  7861.                  demand.  You should contact Software Toolz with a
  7862.                  request to support the platform of your choice.
  7863.  
  7864.             Why is the performance of DOCZ under VMS less than whizzy?
  7865.  
  7866.                  Because DOCZ does not make direct calls to VMS system
  7867.                  services (such as RMS).  This makes the source code for
  7868.                  DOCZ much easier to port to other platforms.
  7869.  
  7870.             Do I need to be concerned about file locking?
  7871.  
  7872.                  The Documentation Index File is the only file in the
  7873.                  DOCZ system in which the same record could potentially
  7874.                  be updated simultaneously by more than one process.  In
  7875.                  multi-user versions of DOCZ it is locked for update for
  7876.                  all platforms (including MSDOS if SHARE is installed).
  7877.  
  7878.             My documentation does not look at all like the samples!
  7879.  
  7880.                  See "FORMATTING SOURCE CODE:  The Parameters for
  7881.                  Documentation Headers."  Some parameters require
  7882.                  single-word arguments, or dates, or arguments on the
  7883.                  same line as the parameter.  Most output documentation
  7884.                  problems arise from a violation of these requirements.
  7885.  
  7886.  
  7887.  
  7888.  
  7889.  
  7890.  
  7891.                                          136
  7892.  
  7893.  
  7894.  
  7895.                                 QUESTIONS AND ANSWERS
  7896.  
  7897.  
  7898.             If I enable logging, won't the log grow endlessly?
  7899.  
  7900.                  No.  Every time a program logs to the DOCZ log, the
  7901.                  first entry in the log is checked for age.  If its age
  7902.                  is older than the limit in effect, the log is
  7903.                  "cleaned."  This operation may occur no more than once
  7904.                  each day.  See "SELECTING OPTIONS:  Transaction
  7905.                  Logging."
  7906.  
  7907.             Can I edit the DOCZ log directly using a text editor?
  7908.  
  7909.                  Yes, as long as the entries remain in chronological
  7910.                  order (for cleaning purposes) and the fields are not
  7911.                  rearranged.
  7912.  
  7913.             Can I edit the Documentation Index File directly using a
  7914.             text editor?
  7915.  
  7916.                  No.  The Documentation Index File is binary, and you
  7917.                  can use the DOCXLED program to modify it.  You can
  7918.                  produce an ASCII Transport File using DOCXLU and that
  7919.                  file can be edited directly with a text editor (taking
  7920.                  care not to rearrange the fields).
  7921.  
  7922.             Can I invoke DOC once to print all reference manuals?
  7923.  
  7924.                  No.  DOC must be run once for each library name.
  7925.  
  7926.             I built a help library on one platform and transported it to
  7927.             another.  After I ran DOCHBLD against the transported file,
  7928.             DOCHELP displayed garbage.
  7929.  
  7930.                  It is quite possible that your transport mechanism
  7931.                  modified the transport file in some way.  Be sure that
  7932.                  your transport mechanism fixes end-of-line (if
  7933.                  necessary) and does not affect the file format in any
  7934.                  way.  The VMS version of DOCHBLD requires Stream_LF
  7935.                  files, but if any other format is used for input, it
  7936.                  will be automatically converted to Stream_LF by
  7937.                  DOCHBLD.
  7938.  
  7939.             On my VMS system, the default text file format is VAR, but
  7940.             DOCZ requires Stream_LF.
  7941.  
  7942.                  These files will be automatically converted when needed
  7943.                  by either DOC or DOCHBLD for input.  CMS does not care
  7944.                  which format is used.  Some performance losses will be
  7945.                  noticed if conversions are required.
  7946.  
  7947.  
  7948.  
  7949.  
  7950.  
  7951.  
  7952.  
  7953.  
  7954.                                          137
  7955.  
  7956.  
  7957.  
  7958.                                 QUESTIONS AND ANSWERS
  7959.  
  7960.  
  7961.             A DOCZ program blew-up when I gave it a wild-card argument
  7962.             in my Unix version.
  7963.  
  7964.                  In some cases, DOCZ programs require wildcard arguments
  7965.                  passed to be quoted so that the program can expand the
  7966.                  wildcards instead of the Shell.  See the documentation
  7967.                  for the program.
  7968.  
  7969.             I purchased a single-user version of DOCZ, but now several
  7970.             people want to use it.
  7971.  
  7972.                  Your license type can be converted to multi-user with a
  7973.                  credit for your single-user license.  Contact Software
  7974.                  Toolz.  If your distribution media required a surcharge
  7975.                  (tape), it may be returned to Software Toolz for a
  7976.                  credit when new distribution media is issued to you.
  7977.  
  7978.             I purchased DOCZ for one platform, and I want to license
  7979.             DOCZ on another platform in addition.
  7980.  
  7981.                  Licenses for additional platforms are available at a
  7982.                  discount after the first platform is licensed.
  7983.  
  7984.             Columns are out of alignment in my documentation and on-line
  7985.             help libraries.
  7986.  
  7987.                  Use the "Variable TAB" option in the Configuration File
  7988.                  to match TAB expansion to your source code editor.
  7989.  
  7990.             I would like to use the PSET program with my other
  7991.             utilities.
  7992.  
  7993.                  PSET, and the other DOCZ utilities, PCODE, REFORMAT,
  7994.                  FILLS, DETAB, RETAB, and CALCDATE, are independent of
  7995.                  the DOCZ environment (they do not use DOCZ environment
  7996.                  variables or DOCZ directory naming conventions) and are
  7997.                  therefore usable with your other utilities.
  7998.  
  7999.             Why is my disk "thrashing" when I first invoke the DOC
  8000.             program?
  8001.  
  8002.                  The DOC program uses the PSET database, PSET.DAT.  DOC
  8003.                  automatically searches for the file using your search
  8004.                  path.  If your search path is long or if the
  8005.                  directories in your search path (that are searched
  8006.                  before PSET.DAT is found) contain many files, the
  8007.                  search will produce "thrashing."
  8008.  
  8009.             There are a few features I would like to see added to DOCZ.
  8010.  
  8011.  
  8012.  
  8013.  
  8014.  
  8015.  
  8016.  
  8017.                                          138
  8018.  
  8019.  
  8020.  
  8021.                                 QUESTIONS AND ANSWERS
  8022.  
  8023.  
  8024.             Can I make a few suggestions?
  8025.  
  8026.                  Almost 100% of customer suggestions are incorporated
  8027.                  into new releases of DOCZ.  Some enhancements may be
  8028.                  made immediately, while others may have to be put-off
  8029.                  for a later release.  ALL suggestions are taken
  8030.                  seriously!
  8031.  
  8032.             Where is Ball Ground, Georgia?
  8033.  
  8034.                  About 40 miles due north of Atlanta.
  8035.  
  8036.  
  8037.  
  8038.  
  8039.  
  8040.  
  8041.  
  8042.  
  8043.  
  8044.  
  8045.  
  8046.  
  8047.  
  8048.  
  8049.  
  8050.  
  8051.  
  8052.  
  8053.  
  8054.  
  8055.  
  8056.  
  8057.  
  8058.  
  8059.  
  8060.  
  8061.  
  8062.  
  8063.  
  8064.  
  8065.  
  8066.  
  8067.  
  8068.  
  8069.  
  8070.  
  8071.  
  8072.  
  8073.  
  8074.  
  8075.  
  8076.  
  8077.  
  8078.  
  8079.  
  8080.                                          139
  8081.  
  8082.  
  8083.  
  8084.  
  8085.                                     INSTALLATION
  8086.  
  8087.  
  8088.             Basic Installation
  8089.  
  8090.             The DOCZ System installation is very similar on all of the
  8091.             supported platforms, and consists of the following basic
  8092.             steps:
  8093.  
  8094.                  (1)  Provide the DOCZ programs in your search path, or
  8095.                       (in the VMS version) define the DOCZ programs as
  8096.                       foreign commands.
  8097.  
  8098.                  (2)  Create the DOCSRC default source root directory.
  8099.  
  8100.                  (3)  Create a sub-directory (to DOCSRC) for each
  8101.                       library to be documented with the name of the sub-
  8102.                       directory begin the same as the library name (in
  8103.                       upper case).
  8104.  
  8105.                  (4)  Create the DOCREF directory.
  8106.  
  8107.                  (5)  In the VMS version, create the DOCDAT directory.
  8108.  
  8109.                  (6)     vide the DOCZ symbols/logical names for DOCZ
  8110.                       Pro
  8111.                       users.
  8112.  
  8113.             All of the above steps are provided in the installation
  8114.             procedure that is part of the DOCZ Installation Kit.
  8115.  
  8116.             Directories to which DOCZ files are installed may, in all
  8117.             cases, be specified by the installer.  Conventional default
  8118.             directory names are supplied, but these can be overridden
  8119.             during the installation.  Directories that do not already
  8120.             exist (and their parent directories) will be created.
  8121.  
  8122.  
  8123.  
  8124.             Re-installation/Update
  8125.  
  8126.             The DOCZ installation procedure will check for the presence
  8127.             of configuration files that may already exist in the
  8128.             directories to which you are installing.  Files will most
  8129.             likely already exist when re-installing or updating DOCZ.
  8130.             In this case, the installation procedure will warn you about
  8131.             the condition, and ask you for permission to overwrite those
  8132.             files.
  8133.  
  8134.  
  8135.  
  8136.  
  8137.  
  8138.  
  8139.  
  8140.  
  8141.  
  8142.  
  8143.  
  8144.  
  8145.                                          141
  8146.  
  8147.  
  8148.  
  8149.                                     INSTALLATION
  8150.  
  8151.  
  8152.             Enabling Extended DOCZ Features
  8153.  
  8154.             Optional steps for utilizing extended features of the DOCZ
  8155.             system are:
  8156.  
  8157.                  (1)  Provide a Configuration File in the DOCREF
  8158.                       directory that specifies automatic options.
  8159.  
  8160.                  (2)  Build a printer feature database using PCODE
  8161.                       and/or PSET, and specify the printer features to
  8162.                       use in the Configuration File.
  8163.  
  8164.                  (3)  Enable/disable transaction logging in the
  8165.                       Configuration File (enabled for 30 day log
  8166.                       retention by default).
  8167.  
  8168.                  (4)  Automate Fix, Revision, and Introduction Notices
  8169.                       via command files.
  8170.  
  8171.                  (5)  Provide library introduction;s (cover sheets) in
  8172.                       the DOCREF directory.
  8173.  
  8174.                  (6)  Bridge cross-platform development environments
  8175.                       using DOCZ ASCII Transport Files.
  8176.  
  8177.                  (7)  Build an on-line help library with DOCHBLD, to be
  8178.                       viewed by users using the DOCHELP utility.
  8179.  
  8180.                  (8)  Use version control software supported by the DOCZ
  8181.                       System to manage source code.
  8182.  
  8183.                  (9)  Edit the Configuration File to use non-supported
  8184.                       directory naming and version control software.
  8185.  
  8186.  
  8187.  
  8188.  
  8189.  
  8190.  
  8191.  
  8192.  
  8193.  
  8194.  
  8195.  
  8196.  
  8197.  
  8198.  
  8199.  
  8200.  
  8201.  
  8202.  
  8203.  
  8204.  
  8205.  
  8206.  
  8207.  
  8208.                                          142
  8209.  
  8210.  
  8211.  
  8212.                                     INSTALLATION
  8213.  
  8214.  
  8215.             Examples and Support Files
  8216.  
  8217.                  getstart.doc   guide to getting started quickly
  8218.                  dochead.txt    generic prototype DOCZ header
  8219.                  dochead.cb     Brief macro to insert DOCZ header into
  8220.                                 source code
  8221.                  dochelp.m      Brief macro for the DOCHELP utility
  8222.                  dochelp.txt    ASCII Transport File for DOCHBLD utility
  8223.                                 to build a help library for the DOCZ
  8224.                                 system
  8225.                  fake.bas       BASIC source example
  8226.                  move.bat       MSDOS command file source example
  8227.                  cmdline.pas    Pascal source example
  8228.                  strmcpy.asm    8086 Assembly source example
  8229.                  strmcpy.mar        1 Assembly source example
  8230.                                 VAX1
  8231.                  mailfile.com   VAX-DCL source example
  8232.                  strmcpy.c      C source example
  8233.                  cp_r.sh        UNIX Shell source example
  8234.                  upcase.for     FORTRAN source example
  8235.                  macro.h        C macro example
  8236.                  gtsa.prg       Dbase example
  8237.                  frank.prl      Perl example
  8238.                  docstash       UNIX SCCS automation (Bourne Shell)
  8239.                  docstash.com   VMS CMS automation (DCL)
  8240.                  macros.h       Example used in sample C function
  8241.                                 library
  8242.                  haspriv.c      Example used in sample C function
  8243.                                 library
  8244.                  insert.mar     Example used in sample C function
  8245.                                 library
  8246.                  juldate.c      Example used in sample C function
  8247.                                 library
  8248.                  delstr.asm     Example used in sample C function
  8249.                                 library
  8250.                  c.txt          C Standard Library on-line help
  8251.                                 transport file
  8252.                  zero.c         Example used in sample C function
  8253.                                 library
  8254.                  UPDATE.DOC     This is an optional file that contains
  8255.                                 updates to the printed DOCZ User Manual.
  8256.                                 If supplied, it will be deposited in the
  8257.                                 DOCREF directory during installation.
  8258.  
  8259.  
  8260.  
  8261.  
  8262.  
  8263.  
  8264.  
  8265.  
  8266.  
  8267.  
  8268.  
  8269.  
  8270.  
  8271.  
  8272.                                          143
  8273.  
  8274.  
  8275.  
  8276.                                     INSTALLATION
  8277.  
  8278.  
  8279.             MSDOS VERSION
  8280.  
  8281.             MSDOS Version Minimum Requirements
  8282.  
  8283.                  o    You must run MSDOS version 2.0 or higher and have
  8284.                       at least 256k of memory.
  8285.  
  8286.  
  8287.             Getting Started with the MSDOS Version
  8288.  
  8289.                  (1)  Send in the Registration
  8290.  
  8291.                  (2)  Copy the distribution media, and run the INSTALL
  8292.                       program with the disk containing the INSTALL
  8293.                       program as the default device.
  8294.  
  8295.                  (3)  Answer the questions provided by the installation
  8296.                       program.
  8297.  
  8298.                  (4)  Please read the User Manual before calling
  8299.                       Software Toolz with questions.
  8300.  
  8301.  
  8302.             MSDOS Version Installation Procedure
  8303.  
  8304.             The Installation Program, INSTALL.EXE, will perform all
  8305.             necessary steps for the installation of DOCZ, or you may
  8306.             choose to customize the installation yourself.  In any
  8307.             event, you should run the Installation Program first as it
  8308.             performs a test on your MSDOS system for adequate memory and
  8309.             system parameters.
  8310.  
  8311.             The Installation Program features extensive help messages
  8312.             that will guide you through an installation.  The
  8313.             installation is self-explanatory and will not be documented
  8314.             here.
  8315.  
  8316.             DOCZ requires that two directories be set aside for use by
  8317.             the DOC programs.  These directories will be used to store
  8318.             the Documentation Index File, and may be used to store all
  8319.             or some of your source files containing module
  8320.             documentation.  You can establish where those directories
  8321.             are in either of two ways:
  8322.  
  8323.                  (1)  Create directories named \DOCSRC and \DOCREF on
  8324.                       the device that you wish to use the DOCZ
  8325.                       directories.
  8326.  
  8327.                  (2)  Use any directories of your choice and equate the
  8328.                       CLI (command-language-interpreter) symbol, DOCSRC
  8329.                       to the directory name of the default source
  8330.                       directory and DOCREF to the name of the
  8331.                       Documentation Reference Directory.  In your
  8332.                       AUTOEXEC.BAT, you would add the lines,
  8333.  
  8334.  
  8335.                                          144
  8336.  
  8337.  
  8338.  
  8339.                                     INSTALLATION
  8340.  
  8341.  
  8342.  
  8343.                            SET DOCSRC=<directory name>
  8344.                            SET DOCREF=<directory name>
  8345.  
  8346.                       For example:
  8347.  
  8348.                            SET DOCSRC=C:\LIBRARY\SOURCE
  8349.                            SET DOCREF=C:\LIBRARY\INDEX
  8350.  
  8351.             There will be one sub-directory to the Default Source
  8352.             Directory (DOCSRC) per library, and the name of the sub-
  8353.             directory will be the same as the name of the library.
  8354.  
  8355.             When defining CLI symbols, insure that your system has
  8356.             sufficient "environment space."  Later versions of MSDOS
  8357.             allow increasing the environment space via an option in
  8358.             CONFIG.SYS.  Earlier versions of MSDOS can achieve this only
  8359.             through patching of COMMAND.COM.
  8360.  
  8361.             DOCZ programs currently limit the number of modules allowed
  8362.             in a single library to approximately 1000.  The maximum
  8363.             number of modules that your system memory allows is
  8364.             displayed when you run the DOC program.  This limitation is
  8365.             established to allow DOCZ to run on a PC with only 256k of
  8366.             memory.  Note that this limitation applies only to the
  8367.             number of modules in one library.  There is no theoretical
  8368.             limit on the total number of modules that may be contained
  8369.             in the Documentation Index and no limit on the number of
  8370.             libraries you may choose to use.
  8371.  
  8372.             The bldocz.bat command file is provided to build the sample
  8373.             CSUB library from the sample sources.
  8374.  
  8375.  
  8376.             Files in a Working MSDOS DOCZ System
  8377.  
  8378.                  DOC.EXE                  DOC program
  8379.                  DOCXL.EXE                DOCXL program
  8380.                  DOCXLU.EXE               Documentation Index File
  8381.                                           utility
  8382.                  DOCXLED.EXE              DOCXLED program
  8383.                  DOCHBLD.EXE              Help library build utility
  8384.                  DOCHELP.EXE              On-line help program
  8385.                  DOCGET.EXE               DOCZ source file parameter
  8386.                                           retrieval
  8387.                  DOCLOG.EXE               DOCZ log examination utility
  8388.                  DOCLIS.EXE               Source file scanning utility
  8389.                  DOCMAN.EXE               DOCZ on-line User Manual
  8390.                  DOCLEARN.EXE             DOCZ on-line tutorial
  8391.                  CALCDATE.EXE             Date calculation utility
  8392.                  FILLS.EXE                Space/tab file test utility
  8393.                  RETAB.EXE                Convert spaces to tabs utility
  8394.                  DETAB.EXE                Convert tabs to spaces utility
  8395.  
  8396.  
  8397.  
  8398.                                          145
  8399.  
  8400.  
  8401.  
  8402.                                     INSTALLATION
  8403.  
  8404.  
  8405.                  PSET.EXE                 PSET utility for printer
  8406.                                           interface
  8407.                  SSORT.EXE                SORT utility used by DOC
  8408.                  DOCZ_SYM.BAT             defines DOCZ environment
  8409.                                           symbols
  8410.                  PSET.DAT                 printer database produced by
  8411.                                           PCODE and maintained by the
  8412.                                           PSET utility
  8413.                  %DOCREF%DOCXL.DAT        the Documentation Index
  8414.                                           produced by the DOCXL program
  8415.                  %DOCREF%DOCZ.CFG         the optional DOCZ
  8416.                                           Configuration File
  8417.                  %DOCREF%DOCHELP.HLP      on-line help library for
  8418.                                           DOCHELP
  8419.                  %DOCSRC%BLDOCZ.BAT           ds the sample library
  8420.                                           buil
  8421.  
  8422.  
  8423.             If installation of the examples is selected during the
  8424.             installation procedure, the examples are copied to the
  8425.             DOCSRC directory.
  8426.  
  8427.  
  8428.  
  8429.  
  8430.  
  8431.  
  8432.  
  8433.  
  8434.  
  8435.  
  8436.  
  8437.  
  8438.  
  8439.  
  8440.  
  8441.  
  8442.  
  8443.  
  8444.  
  8445.  
  8446.  
  8447.  
  8448.  
  8449.  
  8450.  
  8451.  
  8452.  
  8453.  
  8454.  
  8455.  
  8456.  
  8457.  
  8458.  
  8459.  
  8460.  
  8461.  
  8462.                                          146
  8463.  
  8464.  
  8465.  
  8466.                                     INSTALLATION
  8467.  
  8468.  
  8469.             VMS VERSION
  8470.  
  8471.             VMS Version Minimum Requirements
  8472.  
  8473.                  o    You must run VMS version 4.5 or higher.
  8474.  
  8475.                  o    VAXCRTL run-time library is required (furnished
  8476.                       with 4.4 and later).
  8477.  
  8478.  
  8479.             Getting Started with the VMS Version
  8480.  
  8481.                  (1)  Send in the Registration
  8482.  
  8483.                  (2)  Run the VMS installation command file, VMSINSTAL
  8484.  
  8485.                  (3)  Answer the questions provided by the installation
  8486.                       kit.
  8487.  
  8488.                  (4)  Please read the User Manual before calling
  8489.                       Software Toolz with questions.
  8490.  
  8491.  
  8492.             VMS Version Installation Procedure
  8493.  
  8494.             The Installation Procedure will perform all necessary steps
  8495.             for the installation of DOCZ, or you may choose to customize
  8496.             the installation yourself.
  8497.  
  8498.             To perform a DOCZ installation, run VMSINSTAL with the
  8499.             distribution media inserted in device:
  8500.  
  8501.                  @SYS$UPDATE:VMSINSTAL DOCZ016 <device name>
  8502.  
  8503.             This installation should be performed by the System Manager
  8504.             of the VAX on which you plan to install DOCZ.  The procedure
  8505.             is self-explanatory, and installing DOCZ is trivial if you
  8506.             are satisfied by the defaults provided by the installation
  8507.             procedure.  The only question asked by the procedure is the
  8508.             device on which DOCZ directories will be created.  The
  8509.             default for this device is $DISK1 (logical name), which is
  8510.             the system disk in some VMS systems.  A logical name may be
  8511.             used for this device, but it must be a permanent logical
  8512.             name.
  8513.  
  8514.  
  8515.  
  8516.  
  8517.  
  8518.  
  8519.  
  8520.  
  8521.  
  8522.  
  8523.  
  8524.  
  8525.                                          147
  8526.  
  8527.  
  8528.  
  8529.                                     INSTALLATION
  8530.  
  8531.  
  8532.             DOCZ requires that three directories be set aside for use by
  8533.             the DOC programs.  One will be used as the Default Source
  8534.             Directory serving a the root directory to sub-directories
  8535.             containing source files with module documentation, another
  8536.             will contain the Documentation Index File and other
  8537.             reference files, and the third will be used to contain
  8538.             several data files used by DOCZ.  Technically, the three
  8539.             directories may be the same physical directory, except when
  8540.                 is used to control the source code.  The installation
  8541.             CMS
  8542.             procedure will create the required directories for you.
  8543.             Three logical names must be declared that will point to the
  8544.             three directories required:
  8545.  
  8546.             There will be one sub-directory to the Default Source
  8547.             Directory per library, and the name of the sub-directory
  8548.             will be the same as the name of the library.
  8549.  
  8550.                  DOCSRC         default source directory
  8551.                  DOCREF         directory to contain reference files
  8552.                  used by DOCZ
  8553.                  DOCDAT         data files for use by DOC
  8554.  
  8555.             These logical names should not be rooted.
  8556.  
  8557.             These may be permanent or process logical names, but must be
  8558.             defined for the users of DOCZ.  The installation procedure
  8559.             generates a command file, SYS$MANAGER:DOCZ_LOGIN.COM, that
  8560.             defines the logical names as process logical names and
  8561.             defines the DOCZ program names as DCL foreign commands.
  8562.             This command file could be provided for DOCZ users in any of
  8563.             three ways:
  8564.  
  8565.                  (1)  Calling SYS$MANAGER:DOCZ_LOGIN from SYS$SYLOGIN,
  8566.                       which will define DOCZ symbols and logical names
  8567.                       for all users who log in.
  8568.  
  8569.                  (2)  Instruct user to call SYS$MANAGER:DOCZ_LOGIN from
  8570.                       their own SYS$LOGIN:LOGIN.COM.
  8571.  
  8572.                  (3)  Modify DOCZ users' UAF, so that
  8573.                       LGICMD=SYS$MANAGER:DOCZ_LOGIN.  If this method is
  8574.                       chosen, do not forget to add:
  8575.  
  8576.                            $ IF F$SEARCH("SYS$LOGIN:LOGIN.COM") .EQS. ""
  8577.                            THEN EXIT
  8578.                            $ @SYS$LOGIN:LOGIN
  8579.                            $ EXIT
  8580.  
  8581.                       to SYS$MANAGER:DOCZ_LOGIN.COM so that the user's
  8582.                       LOGIN.COM will be run before DOCZ_LOGIN exits.
  8583.  
  8584.             The installation procedure does not make any of the above
  8585.             modifications:  this step requires a manual change that will
  8586.             have to be made by the VMS system administrator.
  8587.  
  8588.  
  8589.                                          148
  8590.  
  8591.  
  8592.  
  8593.                                     INSTALLATION
  8594.  
  8595.  
  8596.  
  8597.             The installation procedure also creates a start-up file,
  8598.             SYS$MANAGER:DOCZ_STARTUP.COM, which must be called from your
  8599.             system start-up procedure (SYSTARTUP.COM in pre-version 5
  8600.             VMS, and SYSTARTUP_V5.COM in post-version 5 VMS).  The
  8601.             installation procedure does not attempt to modify the system
  8602.             start-up:  this step requires a manual change that will have
  8603.             to be made by the system administrator.
  8604.  
  8605.             The provision to allow CMS (Code Management System) to
  8606.             manage the code has been built-in to DOCZ.  If CMS is
  8607.             installed on your VAX, the installation procedure will
  8608.             detect its presence and link the DOCZ programs to it.  See
  8609.             also "OTHER FEATURES:  Directory Layout."
  8610.  
  8611.             DOCZ programs currently limit the number of modules allowed
  8612.             in a single library to 1024.  This limitation is established
  8613.             merely to assume a reasonable maximum for purposes of memory
  8614.             allocation.   Note that this limitation applies only to the
  8615.             number of modules in one library.  There is no theoretical
  8616.             limit on the total number of modules that may be contained
  8617.             in the Documentation Index and no limit on the number of
  8618.             libraries you choose to use.
  8619.  
  8620.             The DOCXL and DOCXLU programs must be installed with the
  8621.             SYSLCK privilege as they take out an exclusive write system-
  8622.             wide lock using the VMS lock manager facility.  This
  8623.             installation will be performed by
  8624.             SYS$MANAGER:DOCZ_STARTUP.COM.  None of the other DOCZ
  8625.             programs need be installed with privileges.  Any of the DOCZ
  8626.             programs may be installed SHARED.
  8627.  
  8628.             If DOCZ is installed on a VMS system not having CMS, and CMS
  8629.             is installed at a later time; the DOCZ System must be
  8630.             reinstalled to be able to make use of CMS.  A re-
  8631.             installation will not effect any DOCZ files built by your
  8632.             DOCZ System modified or created since an earlier
  8633.             installation (Documentation Index File, error log, etc.).
  8634.  
  8635.  
  8636.             Files in a Working VMS DOCZ System
  8637.  
  8638.                  SYS$SYSTEM:DOC.EXE            DOC program
  8639.                  SYS$SYSTEM:DOCXL.EXE          DOCXL program
  8640.                  SYS$SYSTEM:PCODE.EXE          the PCODE utility
  8641.                  SYS$SYSTEM:DOCXLU.EXE         Documentation Index File
  8642.                                                utility
  8643.                  SYS$SYSTEM:DOCXLED.EXE        DOCXLED utility program
  8644.                  SYS$SYSTEM:DOCHBLD.EXE        Help library build
  8645.                                                utility
  8646.                  SYS$SYSTEM:DOCHELP.EXE        On-line help program
  8647.                  SYS$SYSTEM:DOCGET.EXE         DOCZ source file
  8648.                                                parameter retrieval
  8649.  
  8650.  
  8651.  
  8652.                                          149
  8653.  
  8654.  
  8655.  
  8656.                                     INSTALLATION
  8657.  
  8658.  
  8659.                  SYS$SYSTEM:DOCLOG.EXE         DOCZ log examination
  8660.                                                utility
  8661.                  SYS$SYSTEM:DOCLIS.EXE         Source file scanning
  8662.                                                utility
  8663.                  SYS$SYSTEM:DOCMAN.EXE         DOCZ on-line User Manual
  8664.                  SYS$SYSTEM:DOCLEARN.EXE       DOCZ on-line tutorial
  8665.                  SYS$SYSTEM:CALCDATE.EXE       Date calculation utility
  8666.                  SYS$SYSTEM:FILLS.EXE          Space/tab file test
  8667.                                                utility
  8668.                  SYS$SYSTEM:RETAB.EXE          Convert spaces to tabs
  8669.                                                utility
  8670.                  SYS$SYSTEM:DETAB.EXE          Convert tabs to spaces
  8671.                                                utility
  8672.                  SYS$SYSTEM:PSET.EXE           PSET utility for printer
  8673.                                                interface
  8674.                  DOCDAT:BANNER.DAT             font file for banners
  8675.                                                printed on the
  8676.                                                documentation
  8677.                  DOCDAT:PCODE.DAT              printer database for
  8678.                                                PCODE
  8679.                  DOCDAT:PSET.DAT               printer database produced
  8680.                                                by PCODE and maintained
  8681.                                                by the PSET utility
  8682.                  DOCREF:DOCXL.DAT              the Documentation Index
  8683.                                                produced by the DOCXL
  8684.                                                program
  8685.                  DOCREF:DOCZ.CFG               the optional DOCZ
  8686.                                                Configuration File
  8687.                  DOCREF:DOCHELP.HLP            On-line help file for
  8688.                  DOCHELP
  8689.  
  8690.             The examples are copied to the SYS$EXAMPLES directory.
  8691.  
  8692.  
  8693.  
  8694.  
  8695.  
  8696.  
  8697.  
  8698.  
  8699.  
  8700.  
  8701.  
  8702.  
  8703.  
  8704.  
  8705.  
  8706.  
  8707.  
  8708.  
  8709.  
  8710.  
  8711.  
  8712.  
  8713.  
  8714.  
  8715.                                          150
  8716.  
  8717.  
  8718.  
  8719.                                     INSTALLATION
  8720.  
  8721.  
  8722.             UNIX VERSION
  8723.  
  8724.             UNIX Version Minimum Requirements
  8725.  
  8726.                  o    You must run UNIX System V, version 3 or higher.
  8727.  
  8728.  
  8729.  
  8730.             Getting Started with the UNIX Version
  8731.  
  8732.                  (1)  Send in the Registration
  8733.  
  8734.                  (2)  Run the Unix installation script
  8735.  
  8736.                  (3)  Answer the questions provided by the Installation
  8737.                       Kit.
  8738.  
  8739.                  (4)  Please read the User Manual before calling
  8740.                       Software Toolz with questions.
  8741.  
  8742.  
  8743.             UNIX Version Installation Procedure
  8744.  
  8745.             Whenever possible, the DOCZ System installation kit will
  8746.             support the automated installation facility provided by the
  8747.             native Unix system.  For those Unixes that do not provide an
  8748.             automated installation facility, the DOCZ installation
  8749.             procedure will accompany the distribution media.
  8750.  
  8751.             The Installation Procedure will perform all necessary steps
  8752.             for the installation of DOCZ, or you may choose to customize
  8753.             the installation yourself.  The procedure does not require
  8754.             root privileges unless you wish to place the DOCZ files in
  8755.             system directories which have protection.  The installation
  8756.             procedure will ask for the names of directories into which
  8757.             the DOCZ files will be placed.  If the directories do not
  8758.             already exist, they will be created.  Default standard Unix
  8759.             directory names are supplied, but the installer may specify
  8760.             any directory name.  If the DOCZ installation will overwrite
  8761.             any files with the same names as DOCZ files, those files
  8762.             currently on the system are moved to /usr/tmp.
  8763.  
  8764.             DOCZ requires that two directories be set aside for use by
  8765.             the DOCZ programs.  One will be used as the default
  8766.             directory for the storage of source files containing module
  8767.             documentation, another will contain the Documentation Index
  8768.             File and other reference files.  Technically, the
  8769.             directories may be the same physical directory.  The
  8770.             installation procedure will create the required directories
  8771.             for you.
  8772.  
  8773.  
  8774.  
  8775.  
  8776.  
  8777.  
  8778.                                          151
  8779.  
  8780.  
  8781.  
  8782.                                     INSTALLATION
  8783.  
  8784.  
  8785.             You can establish where those directories are in either of
  8786.             two ways:
  8787.  
  8788.                  (1)         directories named ../docsrc and ../docref
  8789.                       Create
  8790.                       parallel to your working directory.
  8791.  
  8792.                  (2)  (Recommended) Use any directories of your choice
  8793.                       and equate the CLI (command-language-interpreter)
  8794.                       symbol, DOCSRC to the directory name of the
  8795.                       Default Source Directory, DOCREF to the name of
  8796.                       the Documentation Reference Directory.  The
  8797.                       symbols may point to the same directory.  In your
  8798.                       .profile or /etc/profile, you would add the lines,
  8799.  
  8800.                            DOCSRC=<directory name>
  8801.                            DOCREF=<directory name>
  8802.                            export DOCSRC DOCREF
  8803.  
  8804.                       For example:
  8805.  
  8806.                            DOCSRC=/usr/program/source
  8807.                            DOCREF=/usr/program/index
  8808.                            export DOCSRC DOCREF
  8809.  
  8810.             There will be one sub-directory to the Default Source
  8811.             Directory per library, and the name of the sub-directory
  8812.             will be the same as the name of the library (in upper case).
  8813.  
  8814.             DOCZ programs currently limit the number of modules allowed
  8815.             in a single library to 1024.  This limitation is established
  8816.             merely to assume a reasonable maximum for purposes of memory
  8817.             allocation.  Note that this limitation applies only to the
  8818.             number of modules in one library.  There is no theoretical
  8819.             limit on the total number of modules that may be contained
  8820.             in the Documentation Index and no limit on the number of
  8821.             libraries you choose to use.
  8822.  
  8823.             The bldocz script is provided to build the sample CSUB
  8824.             library from the sample sources.
  8825.  
  8826.  
  8827.  
  8828.  
  8829.  
  8830.  
  8831.  
  8832.  
  8833.  
  8834.  
  8835.  
  8836.  
  8837.  
  8838.  
  8839.  
  8840.  
  8841.  
  8842.                                          152
  8843.  
  8844.  
  8845.  
  8846.                                     INSTALLATION
  8847.  
  8848.  
  8849.             Files in a Working UNIX DOCZ System
  8850.  
  8851.                  doc                 DOC program
  8852.                  docxl               DOCXL program
  8853.                  pcode               the PCODE utility
  8854.                  pset                PSET utility for printer interface
  8855.                  docxlu              Documentation Index File utility
  8856.                  docxled             DOCXLED utility program
  8857.                  dochbld             Help library build utility
  8858.                  dochelp             On-line help program
  8859.                  docget              DOCZ source file parameter
  8860.                                      retrieval
  8861.                  doclog              DOCZ log examination utility
  8862.                  doclis              Source file scanning utility
  8863.                  docman              DOCZ on-line User Manual
  8864.                  doclearn            DOCZ on-line tutorial
  8865.                  calcdate            Date calculation utility
  8866.                  fills               Space/tab file test utility
  8867.                  retab               Convert spaces to tabs utility
  8868.                  detab               Convert tabs to spaces utility
  8869.                  docz_sym            defines DOCZ environment symbols
  8870.                  BANNER.DAT          font file for banners printed on
  8871.                                      the documentation
  8872.                  PCODE.DAT           printer database for PCODE
  8873.                  PSET.DAT            printer database produced by PCODE
  8874.                                      and maintained by the PSET utility
  8875.                  $DOCREF/DOCXL.DAT   the Documentation Index produced by
  8876.                                      the DOCXL program
  8877.                  $DOCREF/DOCZ.CFG    the optional DOCZ Configuration
  8878.                                      File
  8879.                  $DOCREF/DOCHELP.HLP On-line help file for DOCHELP
  8880.                  $DOCSRC/bldocz      builds the sample library
  8881.  
  8882.             If installation of the examples is selected during the
  8883.             installation procedure, the examples are copied to the
  8884.             DOCSRC directory.
  8885.  
  8886.  
  8887.  
  8888.  
  8889.  
  8890.  
  8891.  
  8892.  
  8893.  
  8894.  
  8895.  
  8896.  
  8897.  
  8898.  
  8899.  
  8900.  
  8901.  
  8902.  
  8903.  
  8904.  
  8905.                                          153
  8906.  
  8907.  
  8908.  
  8909.  
  8910.                                         INDEX
  8911.  
  8912.  
  8913.  
  8914.  
  8915.             $STATUS, 21
  8916.  
  8917.             .APPLICATION parameter, 30
  8918.             .ARGUMENTS parameter, 30
  8919.             .AUTHOR parameter, 30
  8920.             .CAUTION parameter, 31
  8921.             .COMMENTS parameter, 31
  8922.             .CONVENTIONS parameter, 33
  8923.             .DESCRIPTION parameter, 29
  8924.             .DIAGRAM parameter, 33
  8925.             .ENDOC parameter, 27, 33
  8926.             .ERRORS parameter, 33
  8927.             .FIXES parameter, 27, 31
  8928.             .INCLUDES parameter, 33
  8929.             .LANGUAGE parameter, 32, 33
  8930.             .LIBRARY parameter, 27, 29
  8931.             .LSE parameter, 32
  8932.             .MODULE parameter, 27, 29
  8933.             .NARRATIVE parameter, 30
  8934.             .NOTICE parameter, 32
  8935.             .OVERHEAD parameter, 31
  8936.             .REFERENCES parameter, 32
  8937.             .RETURNS parameter, 32
  8938.             .REVISION parameter, 27, 31
  8939.             .SEE_ALSO parameter, 32
  8940.             .SYSTEM parameter, 30
  8941.             .TYPE parameter, 29
  8942.  
  8943.             alternate directories, 57
  8944.             ambiguous file names, 19
  8945.             ASCII transport files, 21, 73, 77, 95
  8946.  
  8947.             batch files, 20
  8948.             building documentation libraries, 37
  8949.  
  8950.             CALCDATE, 99
  8951.             case, 21, 25, 29, 30, 38, 50, 54, 56, 85, 115, 154
  8952.             case, as applied in file names, 20
  8953.             case, as applied in names, 25, 27, 134
  8954.             case, in date specifications, 24
  8955.             CLI symbols, 147
  8956.             CMS, 12, 37, 74, 116, 117, 123, 127, 134, 150, 151
  8957.             command files, 20
  8958.             Command-line options, 60
  8959.             comment string mask, 27, 53, 54
  8960.             Configuration File, 26, 49, 52, 53, 55, 57, 74, 98, 111,
  8961.             144, 147, 151, 155
  8962.             control keys, 23
  8963.             cross-platform development, 12, 118, 136, 144
  8964.             cross-platform file specification translation, 118
  8965.  
  8966.             data directory, 37, 50, 98, 109, 150, 153
  8967.  
  8968.  
  8969.                                          155
  8970.  
  8971.  
  8972.  
  8973.                                         INDEX
  8974.  
  8975.  
  8976.             date format, 23, 43, 99, 108, 109
  8977.             dates, change notice, 45
  8978.             dates, current format, 99
  8979.             dates, default format, 23, 99
  8980.             dates, fix notice, 43
  8981.             dates, introduction, 63
  8982.             dates, modification, 63
  8983.             dates, revision notice, 43
  8984.             default source directory, 15, 37, 38, 146, 150, 153
  8985.             defaults, overriding, 57
  8986.             DETAB, 103
  8987.             DOCDAT, 15, 37, 94, 150
  8988.             DOCGET, 85
  8989.             DOCHBLD, 77
  8990.             DOCHELP, 79
  8991.             DOCLEARN, 91
  8992.             DOCLIS, 86
  8993.             DOCLOG, 88
  8994.             DOCMAN, 90
  8995.             DOCREF, 146, 150, 154
  8996.             DOCSRC, 38, 116, 117, 134, 146, 150, 154
  8997.             documentation data directory, 15
  8998.             documentation header, 26, 28, 37, 41, 43
  8999.             Documentation Index File, 26, 37, 118
  9000.             documentation reference directory, 15, 42, 77, 107, 150, 153
  9001.             documentation size, 134
  9002.             DOCXLED, 81
  9003.             DOCZ concepts, 11
  9004.  
  9005.             enabling extended features, 144
  9006.             Enter and Press, differences, 23
  9007.             error level, 55
  9008.             error levels, severity, 55
  9009.             ERRORLEVEL, 21
  9010.             example files, 145
  9011.  
  9012.             File formats, 21
  9013.             file name, maximum length, 25
  9014.             file specifications, default, 117
  9015.             FILLS, 102
  9016.             formatting source code, 27
  9017.  
  9018.             help, libraries, 120
  9019.             help, on-line, 120
  9020.  
  9021.             installation, MSDOS, 146
  9022.             installation, UNIX, 153
  9023.             installation, VMS, 149
  9024.  
  9025.             library introduction, 41, 42, 45
  9026.             library name, maximum length, 25
  9027.             library names, maximum number of, 26
  9028.             library summary, 45
  9029.             logging, 55, 89, 124
  9030.  
  9031.  
  9032.                                          156
  9033.  
  9034.  
  9035.  
  9036.                                         INDEX
  9037.  
  9038.  
  9039.             logging, error, 55
  9040.             logging, transaction, 55
  9041.             logical names, 150
  9042.  
  9043.             module deletion, 64
  9044.             module name, maximum length, 25
  9045.             multiple language support, 53
  9046.  
  9047.             naming conflicts, module names, 39
  9048.             number of modules, maximum, 147, 151
  9049.  
  9050.             parameter, 26, 27, 28, 41, 43, 54, 106, 111, 114, 123, 146
  9051.             parameter usage, 29
  9052.             parameters, 113
  9053.             parameters, multiple, 29
  9054.             parameters, optional, 29
  9055.             parameters, required, 29
  9056.             parameters, single, 29
  9057.             PCODE, 97
  9058.             portability, 136
  9059.             printer features, installing, 94, 97
  9060.             printers, use by DOCZ System, 42
  9061.             program directory, 15
  9062.             PSET, 93
  9063.  
  9064.             Record format, Documentation Index File, 133
  9065.             REFORMAT, 100
  9066.             RETAB, 104
  9067.             return values, from programs, 21
  9068.  
  9069.             SCCS, 12, 124, 127, 134
  9070.             Shell, 86
  9071.             shell scripts, 20
  9072.             single module documentation, 47
  9073.             sort programs, requirements, 76
  9074.             Standard error, 134
  9075.             summary, application keyword, 41, 45
  9076.             summary, description permutations, 41, 45
  9077.             summary, module description, 41, 45
  9078.             summary, operating system platform, 41, 45
  9079.             summary, quick description, 41, 45
  9080.             support files, 145
  9081.             switch character, 19
  9082.             symbol substitution, 38, 118
  9083.  
  9084.             tab character expansion, 27, 53, 54, 100, 102, 103, 104
  9085.             text data file, 21
  9086.             title page, 45
  9087.  
  9088.             UNIX, 153
  9089.             username, emulating in MSDOS, 59
  9090.             utilizing printer features, 49
  9091.  
  9092.             version control, 12, 37, 49, 57, 86, 115, 121, 124, 144
  9093.  
  9094.  
  9095.                                          157
  9096.  
  9097.  
  9098.  
  9099.                                         INDEX
  9100.  
  9101.  
  9102.             version control, command file automation, 127
  9103.             version control, custom interface, 134
  9104.             version numbers, 21
  9105.             VMS, 149
  9106.  
  9107.             wildcard, 19, 38, 79, 86
  9108.             working directory, 15, 77, 94, 149
  9109.  
  9110.  
  9111.  
  9112.  
  9113.  
  9114.  
  9115.  
  9116.  
  9117.  
  9118.  
  9119.  
  9120.  
  9121.  
  9122.  
  9123.  
  9124.  
  9125.  
  9126.  
  9127.  
  9128.  
  9129.  
  9130.  
  9131.  
  9132.  
  9133.  
  9134.  
  9135.  
  9136.  
  9137.  
  9138.  
  9139.  
  9140.  
  9141.  
  9142.  
  9143.  
  9144.  
  9145.  
  9146.  
  9147.  
  9148.  
  9149.  
  9150.  
  9151.  
  9152.  
  9153.  
  9154.  
  9155.  
  9156.  
  9157.  
  9158.                                          158
  9159.  
  9160.